[MacPorts] #27688: py27-numpy @1.5.1 Build ignores archflags
#27688: py27-numpy @1.5.1 Build ignores archflags ------------------------------------+--------------------------------------- Reporter: corwin.amber@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: py27-scipy ------------------------------------+--------------------------------------- I am building on Intel Mac OS X 10.6.5 with: {{{ build_arch x86_64 macosx_deployment_target 10.5 }}} Which causes {{{gcc-4.0}}} to be used as the C compiler. Architecture- specific flags are passed to setup.py as {{{CFLAGS}}}, {{{LDFLAGS}}} etc., but numpy.distutils ignores {{{LDFLAGS}}}, which causes link to fail immediately due to mach-o mismatch: {{{ :info:build C compiler: /usr/bin/gcc-4.0 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch x86_64 :info:build :info:build compile options: '-c' :info:build gcc-4.0: _configtest.c :info:build /usr/bin/gcc-4.0 _configtest.o -L/opt/local/lib -llapack -lptf77blas -lptcblas -latlas -o _co nfigtest :info:build ld: warning: in _configtest.o, file was built for unsupported file format which is not the ar chitecture being linked (i386) :info:build Undefined symbols: :info:build "_main", referenced from: :info:build start in crt1.10.5.o :info:build ld: symbol(s) not found }}} I didn't try this, but I suspect the problem will also affect users of 10.6 without {{{macosx_deployment_target}}} trying to compile 32-bit libraries (are there any?). In my case, I managed to circumvent this issue by adding the following line to the Portfile: {{{ build.env-append ARCHFLAGS="${configure.ld_archflags}" }}} -- Ticket URL: <https://trac.macports.org/ticket/27688> MacPorts <http://www.macports.org/> Ports system for Mac OS
#27688: py27-numpy @1.5.1 Build ignores archflags ------------------------------------+--------------------------------------- Reporter: corwin.amber@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: py27-scipy ------------------------------------+--------------------------------------- Comment(by corwin.amber@…): (typo: 'port' should be py27-numpy) -- Ticket URL: <https://trac.macports.org/ticket/27688#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#27688: py27-numpy @1.5.1 Build ignores archflags ------------------------------------+--------------------------------------- Reporter: corwin.amber@… | Owner: ram@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: py27-numpy ------------------------------------+--------------------------------------- Changes (by ram@…): * cc: ram@…, openmaintainer@… (removed) * owner: macports-tickets@… => ram@… * status: new => assigned * port: py27-scipy => py27-numpy -- Ticket URL: <https://trac.macports.org/ticket/27688#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#27688: py27-numpy @1.5.1 Build ignores archflags ------------------------------------+--------------------------------------- Reporter: corwin.amber@… | Owner: ram@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: py27-numpy py26-numpy ------------------------------------+--------------------------------------- Changes (by jmr@…): * cc: mcalhoun@… (added) * port: py27-numpy => py27-numpy py26-numpy Comment: This was no doubt inherited from py26-numpy. -- Ticket URL: <https://trac.macports.org/ticket/27688#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
#27688: py27-numpy @1.5.1 Build ignores archflags -------------------------------------+-------------------------------------- Reporter: corwin.amber@… | Owner: ram@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Resolution: fixed | Keywords: Port: py27-numpy py26-numpy | -------------------------------------+-------------------------------------- Changes (by ram@…): * status: assigned => closed * resolution: => fixed Comment: fixed in r74507, thanks -- Ticket URL: <https://trac.macports.org/ticket/27688#comment:4> MacPorts <http://www.macports.org/> Ports system for Mac OS
#27688: py27-numpy @1.5.1 Build ignores archflags -------------------------------------+-------------------------------------- Reporter: corwin.amber@… | Owner: ram@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Resolution: fixed | Keywords: Port: py27-numpy py26-numpy | -------------------------------------+-------------------------------------- Comment(by jmr@…): Won't that do the wrong thing with +universal? I actually have my doubts about whether the universal variant works anyway, but I haven't tested it, so maybe it does. -- Ticket URL: <https://trac.macports.org/ticket/27688#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#27688: py27-numpy @1.5.1 Build ignores archflags -------------------------------------+-------------------------------------- Reporter: corwin.amber@… | Owner: ram@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Resolution: fixed | Keywords: Port: py27-numpy py26-numpy | -------------------------------------+-------------------------------------- Comment(by ram@…): I don't use universal and have never got universal to work right on my system, so I don't know. Personally I can't see the point of universal for numpy etc.. -- Ticket URL: <https://trac.macports.org/ticket/27688#comment:6> MacPorts <http://www.macports.org/> Ports system for Mac OS
#27688: py27-numpy @1.5.1 Build ignores archflags -------------------------------------+-------------------------------------- Reporter: corwin.amber@… | Owner: ram@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Resolution: fixed | Keywords: Port: py27-numpy py26-numpy | -------------------------------------+-------------------------------------- Comment(by corwin.amber@…): I tried in fact and it really doesn't work, nor did it work before. It appears the MacPorts gcc lacks the Apple extension which enables the creation of universal binaries. Since gfortran-mp-4.4 is used for linking, even if the link flags are set to "-arch i386 -arch x86_64", they will be ignored. -- Ticket URL: <https://trac.macports.org/ticket/27688#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#27688: py27-numpy @1.5.1 Build ignores archflags -------------------------------------+-------------------------------------- Reporter: corwin.amber@… | Owner: ram@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Resolution: fixed | Keywords: Port: py27-numpy py26-numpy | -------------------------------------+-------------------------------------- Comment(by jmr@…): Yeah, that's about what I thought would happen when using the gccXX variants. So they should conflict with universal at least. It might still work with -atlas though? -- Ticket URL: <https://trac.macports.org/ticket/27688#comment:8> MacPorts <http://www.macports.org/> Ports system for Mac OS
#27688: py27-numpy @1.5.1 Build ignores archflags -------------------------------------+-------------------------------------- Reporter: corwin.amber@… | Owner: ram@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Resolution: fixed | Keywords: Port: py27-numpy py26-numpy | -------------------------------------+-------------------------------------- Comment(by jmr@…): Universal should work as well as it ever did, and not be allowed when using +atlas, as of r74567. -- Ticket URL: <https://trac.macports.org/ticket/27688#comment:9> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts