Opened 12 years ago

Closed 10 years ago

#34750 closed defect (fixed)

py32-numpy fails to build on snow leopard/XCode4.2

Reported by: miguelbarao (MB) Owned by: dh@…
Priority: Normal Milestone:
Component: ports Version: 2.1.1
Keywords: Cc: michaelld (Michael Dickens), petrrr
Port: py-numpy

Description

--->  Computing dependencies for py32-numpy
--->  Fetching archive for py32-numpy
--->  Attempting to fetch py32-numpy-1.6.2_0.darwin_10.x86_64.tbz2 from http://packages.macports.org/py32-numpy
--->  Fetching distfiles for py32-numpy
--->  Attempting to fetch numpy-1.6.2.tar.gz from http://switch.dl.sourceforge.net/project/numpy/NumPy/1.6.2/
--->  Verifying checksum(s) for py32-numpy
--->  Extracting py32-numpy
--->  Applying patches to py32-numpy
--->  Configuring py32-numpy
--->  Building py32-numpy
--->  Staging py32-numpy into destroot
Error: org.macports.destroot for port py32-numpy returned: command execution failed
Please see the log file for port py32-numpy for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_python_py-numpy/py32-numpy/main.log

OS X version is 10.6.8 XCode version is 4.2

See log file attached.

Attachments (1)

main.log (547.7 KB) - added by miguelbarao (MB) 12 years ago.

Download all attachments as: .zip

Change History (16)

Changed 12 years ago by miguelbarao (MB)

Attachment: main.log added

comment:1 Changed 12 years ago by mf2k (Frank Schima)

Cc: dh@… ram@… added

In the future, please Cc the port maintainer(s).

comment:2 Changed 12 years ago by skymoo (Adam Mercer)

I can't reproduce this on my Lion machine (Xcode-4.3.2) nor Snow Leopard (Xcode-4.0.2)

comment:3 Changed 12 years ago by miguelbarao (MB)

This was obtained with "Xcode for snow leopard" version 4.2 obtained from the AppStore. It's the latest xcode version for snow leopard. I think 4.0.2 is no longer available.

comment:4 Changed 12 years ago by skymoo (Adam Mercer)

I'm not going to have access to my SnowLeopard machine again for about a fortnight, left for the airport this morning. I'll see if I can update to Xcode-4.2 when I get back on my Snow Leopard machine and see if I can reproduce the problem. As a workaround can you see if running the following allows you to build:

sudo port clean py32-numpy
sudo port install py32-numpy configure.compiler=clang

comment:5 in reply to:  4 Changed 12 years ago by miguelbarao (MB)

Replying to ram@…:

sudo port clean py32-numpy
sudo port install py32-numpy configure.compiler=clang

Also failed with the same error. It still looks for nonexistent /usr/bin/gcc-4.2:

...
:info:destroot gcc-4.2: _configtest.c
:info:destroot sh: /usr/bin/gcc-4.2: No such file or directory
:info:destroot sh: /usr/bin/gcc-4.2: No such file or directory
:info:destroot failure.
...

I'll try with 2 other machines (lion & snow leopard) and report back later.

comment:6 Changed 12 years ago by miguelbarao (MB)

I can confirm that py32-numpy compiles on lion/xcode4.3 but fails on snow leopard/xcode4.2 (tried on two other machines).

comment:7 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

As explained in our ProblemHotlist, the python ports (python32, etc.) contain the location of the compiler used to compile them, and then use that same compiler when compiling other python modules.

Our buildbot uses Xcode 3.2 and therefore the compiler used is /usr/bin/gcc-4.2. Although you use Xcode 4.2 which uses a different compiler, you could receive (and probably have received) a binary from our buildbot for python32, therefore it is configured to use the wrong compiler on your system. You must rebuild python32 on your machine, and not use the binary from our server:

sudo port -ns upgrade --force python32

Any future upgrade of python32 will reintroduce this problem, so you must either remember to use the -s flag whenever you upgrade python32 and other ports that hardcode the compiler location, or turn off the use of binaries entirely in macports.conf.

comment:8 in reply to:  7 Changed 12 years ago by miguelbarao (MB)

Excellent explanation. Much more understandable than ProblemHotlist. Why not add it there? I had already tried several suggestions from that page and all of them had failed. The -s flag was the key. Thank you.

comment:9 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

You may feel free to edit the ProblemHotlist or other wiki pages if you can make them clearer.

comment:10 Changed 12 years ago by jmroot (Joshua Root)

It's not meant to matter which compiler python records that it was built with. Python module ports should make sure they use the currently configured compiler.

comment:11 Changed 12 years ago by skymoo (Adam Mercer)

Cc: ram@… removed

comment:12 Changed 10 years ago by petrrr

Cc: petr@… added

Cc Me!

comment:13 Changed 10 years ago by petrrr

Port: py-numpy added; py32-numpy removed

comment:14 Changed 10 years ago by petrrr

Cc: michaelld@… added; dh@… removed
Owner: changed from macports-tickets@… to dh@…

This looks like it could be closed by now. py32-numpy is now retired.

comment:15 Changed 10 years ago by michaelld (Michael Dickens)

Resolution: fixed
Status: newclosed

Works for me.

Note: See TracTickets for help on using tickets.