[MacPorts] #49651: nco @4.5.2_2 +gcc49 build failure
#49651: nco @4.5.2_2 +gcc49 build failure ----------------------------+-------------------------------- Reporter: gryphon.csd8@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Keywords: | Port: nco ----------------------------+-------------------------------- It appears that the nco build fails due to an issue in the ncoLexer, due to an issue in the antlr port CharScanner.hpp "strcasecmp" routine, if I'm reading the main.log properly. I believe the issue is shown in this main.log excerpt: {{{ :info:build /opt/local/bin/g++-mp-4.9 -DHAVE_CONFIG_H -I. -I../.. -I./ -I../nco -I/opt/local/include -I/opt/local/include -DNDEBUG -I/opt/local/include -I/usr/include/malloc -I/opt/local/include/udunits2 -I/opt/local/include -DENABLE_NETCDF4 -I/opt/local/include -I/opt/local/include -I/opt/local/include -I/opt/local/include/udunits2 -pipe -Os -c -o ncoParser.o ncoParser.cpp :info:build In file included from ncoLexer.hpp:10:0, :info:build from ncoLexer.cpp:2: :info:build /opt/local/include/antlr/CharScanner.hpp: In member function 'bool antlr::CharScannerLiteralsLess::operator()(const string&, const string&) const': :info:build /opt/local/include/antlr/CharScanner.hpp:565:41: error: 'strcasecmp' was not declared in this scope :info:build return (strcasecmp(x.c_str(),y.c_str())<0); :info:build ^ :info:build /opt/local/bin/g++-mp-4.9 -DHAVE_CONFIG_H -I. -I../.. -I./ -I../nco -I/opt/local/include -I/opt/local/include -DNDEBUG -I/opt/local/include -I/usr/include/malloc -I/opt/local/include/udunits2 -I/opt/local/include -DENABLE_NETCDF4 -I/opt/local/include -I/opt/local/include -I/opt/local/include -I/opt/local/include/udunits2 -pipe -Os -c -o ncoTree.o ncoTree.cpp :info:build make[3]: *** [fmc_gsl_cls.o] Error 1 :info:build make[3]: *** Waiting for unfinished jobs.... :info:build make[3]: *** [ncoLexer.o] Error 1 :info:build make[3]: Leaving directory }}} -- Ticket URL: <https://trac.macports.org/ticket/49651> MacPorts <https://www.macports.org/> Ports system for OS X
#49651: nco @4.5.2_2 +gcc49 build failure -----------------------------+-------------------------------- Reporter: gryphon.csd8@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: nco | -----------------------------+-------------------------------- Comment (by ryandesign@…): Replying to [ticket:49651 gryphon.csd8@…]:
It appears that the nco build fails due to an issue in the ncoLexer, due to an issue in the antlr port CharScanner.hpp "strcasecmp" routine, if I'm reading the main.log properly.
Almost right: `strcasecmp` is an operating system function, which for some reason is not being found. -- Ticket URL: <https://trac.macports.org/ticket/49651#comment:1> MacPorts <https://www.macports.org/> Ports system for OS X
#49651: nco @4.5.2_2 +gcc49 build failure -----------------------------+----------------------- Reporter: gryphon.csd8@… | Owner: takeshi@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: nco | -----------------------------+----------------------- Changes (by ryandesign@…): * owner: macports-tickets@… => takeshi@… -- Ticket URL: <https://trac.macports.org/ticket/49651#comment:2> MacPorts <https://www.macports.org/> Ports system for OS X
#49651: nco @4.5.2_2 +gcc49 build failure -----------------------------+----------------------- Reporter: gryphon.csd8@… | Owner: takeshi@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: nco | -----------------------------+----------------------- Changes (by ryandesign@…): * cc: thiagoveloso@… (added) Comment: Has duplicate #49754. -- Ticket URL: <https://trac.macports.org/ticket/49651#comment:3> MacPorts <https://www.macports.org/> Ports system for OS X
#49651: nco @4.5.2_2: /opt/local/include/antlr/CharScanner.hpp:565:41: error: 'strcasecmp' was not declared in this scope -----------------------------+----------------------- Reporter: gryphon.csd8@… | Owner: takeshi@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: nco | -----------------------------+----------------------- Changes (by ryandesign@…): * cc: smasson@… (added) Comment: Has duplicate #50793. -- Ticket URL: <https://trac.macports.org/ticket/49651#comment:4> MacPorts <https://www.macports.org/> Ports system for OS X
#49651: nco @4.5.2_2: /opt/local/include/antlr/CharScanner.hpp:565:41: error: 'strcasecmp' was not declared in this scope -----------------------------+----------------------- Reporter: gryphon.csd8@… | Owner: takeshi@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: nco | -----------------------------+----------------------- Comment (by takeshi@…): It seems that clang++ can compile ncoLexer.cpp but g++. I was able to compile ncoLexer.cpp by patching CharScanner.hpp. But I still have link errors. -- Ticket URL: <https://trac.macports.org/ticket/49651#comment:5> MacPorts <https://www.macports.org/> Ports system for OS X
#49651: nco @4.5.2_2: /opt/local/include/antlr/CharScanner.hpp:565:41: error: 'strcasecmp' was not declared in this scope -----------------------------+----------------------- Reporter: gryphon.csd8@… | Owner: takeshi@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: nco | -----------------------------+----------------------- Comment (by takeshi@…): clang++ used to compile antlr and g++ seems to generate different symbols. e.g. for antlr::ASTFactory::create {{{ $ nm work/nco-4.5.5/src/nco++/ncoParser.o | grep ASTFactory | grep create U __ZN5antlr10ASTFactory6createENS_13TokenRefCountINS_5TokenEEE U __ZN5antlr10ASTFactory6createEiRKSs $ nm /opt/local/lib/libantlr.a | grep ASTFactory | grep create 000000000000049c T __ZN5antlr10ASTFactory6createENS_11ASTRefCountINS_3ASTEEE 0000000000000588 T __ZN5antlr10ASTFactory6createENS_13TokenRefCountINS_5TokenEEE 0000000000000396 T __ZN5antlr10ASTFactory6createEi 0000000000000432 T __ZN5antlr10ASTFactory6createEiRKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEE 0000000000000344 T __ZN5antlr10ASTFactory6createEv }}} -- Ticket URL: <https://trac.macports.org/ticket/49651#comment:6> MacPorts <https://www.macports.org/> Ports system for OS X
#49651: nco @4.5.2_2: /opt/local/include/antlr/CharScanner.hpp:565:41: error: 'strcasecmp' was not declared in this scope -----------------------------+----------------------- Reporter: gryphon.csd8@… | Owner: takeshi@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: wontfix | Keywords: Port: nco | -----------------------------+----------------------- Changes (by takeshi@…): * status: new => closed * resolution: => wontfix Comment: I simply disabled ncap2 when compiled with gcc in r146325. I added a patch to antlr in r146324. If someone let me know how to fix the symbol problem, I'll enable ncap2 again for gcc. -- Ticket URL: <https://trac.macports.org/ticket/49651#comment:7> MacPorts <https://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts