[MacPorts] #37340: py32-numpy (but other version also?) does not link against libgomp when needed
#37340: py32-numpy (but other version also?) does not link against libgomp when needed ---------------------+-------------------------------- Reporter: vince@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Keywords: | Port: ---------------------+-------------------------------- It seems when using an OpenMP enabled compiler, macports-gcc-4.7 for instance, the lapack_lite.so module of numpy (name given from memory) does not link against libgomp, thereby creating an unknown symbol error at runtime. I saw this on an old G4 box (MacOS 10.4), it would have to be confirmed for other combinations of MacOS / Python. Fix is to add ${prefix}/lib/gccXX/libgomp.dylib in the extra_link_args line of patchfile ‘patch-numpy_linalg_setup.py.diff’ -- Ticket URL: <https://trac.macports.org/ticket/37340> MacPorts <http://www.macports.org/> Ports system for Mac OS
#37340: py32-numpy (but other version also?) does not link against libgomp when needed -----------------------+-------------------------------- Reporter: vince@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: OpenMP numpy Port: py-numpy | -----------------------+-------------------------------- Changes (by vince@…): * cc: ram@… (added) * keywords: => OpenMP numpy * port: => py-numpy -- Ticket URL: <https://trac.macports.org/ticket/37340#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#37340: py32-numpy (but other version also?) does not link against libgomp when needed -----------------------+-------------------------------- Reporter: vince@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: OpenMP numpy Port: py-numpy | -----------------------+-------------------------------- Comment (by aronnax@…): Better than explicitly linking against {{{libgomp}}} is to to pass {{{-fopenmp}}} to both the compiler and the linker. -- Ticket URL: <https://trac.macports.org/ticket/37340#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#37340: py32-numpy (but other version also?) does not link against libgomp when needed -----------------------+-------------------------------- Reporter: vince@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: OpenMP numpy Port: py-numpy | -----------------------+-------------------------------- Comment (by vince@…): Yes, you’re right, I’d forgotten this flag. Thanks for pointing it out. -- Ticket URL: <https://trac.macports.org/ticket/37340#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
#37340: py32-numpy (but other version also?) does not link against libgomp when needed -----------------------+-------------------------------- Reporter: vince@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: OpenMP numpy Port: py-numpy | -----------------------+-------------------------------- Comment (by ram@…): Replying to [comment:2 aronnax@…]:
Better than explicitly linking against {{{libgomp}}} is to to pass {{{-fopenmp}}} to both the compiler and the linker.
Leo: feel free to make the required changes as you're more familiar with OpenMP. -- Ticket URL: <https://trac.macports.org/ticket/37340#comment:4> MacPorts <http://www.macports.org/> Ports system for Mac OS
#37340: py32-numpy (but other version also?) does not link against libgomp when needed -----------------------+-------------------------------- Reporter: vince@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: OpenMP numpy Port: py-numpy | -----------------------+-------------------------------- Comment (by aronnax@…): Whichever source files use OpenMP pragmas would have to be compiled with {{{-fopenmp}}} too. Which source files in Numpy use OpenMP? -- Ticket URL: <https://trac.macports.org/ticket/37340#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#37340: py32-numpy (but other version also?) does not link against libgomp when needed -----------------------+-------------------------------- Reporter: vince@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: OpenMP numpy Port: py-numpy | -----------------------+-------------------------------- Comment (by vince@…): The error was solely reported in the lapack_lite.so module. I think it is tied to gfortran, but I can’t be fully positive. What is certain is that, after adding the library in the patch file, as I wrote before, I built a numpy passing all self-tests. -- Ticket URL: <https://trac.macports.org/ticket/37340#comment:6> MacPorts <http://www.macports.org/> Ports system for Mac OS
#37340: py32-numpy (but other version also?) does not link against libgomp when needed -----------------------+-------------------------------- Reporter: vince@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: OpenMP numpy Port: py-numpy | -----------------------+-------------------------------- Changes (by ram@…): * cc: ram@… (removed) -- Ticket URL: <https://trac.macports.org/ticket/37340#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts