#55833 closed defect (wontfix)
py27-pyqt4 fails to configure on Snow Leopard
Reported by: | fvaccari | Owned by: | michaelld (Michael Dickens) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | snowleopard | Cc: | |
Port: | py27-pyqt4 |
Description
The error is
:info:configure make -f qtdirs.mk :info:configure /usr/bin/g++-4.2 -c -pipe -O2 -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.6 -Wall -W -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_SHARED -I/opt/local/libexec/qt4/share/mkspecs/macx-g++ -I. -I. -I/opt/local/libexec/qt4/Library/Frameworks/QtCore.framework/Versions/4/Headers -I/opt/local/libexec/qt4/Library/Frameworks/QtCore.framework/Versions/4/Headers -I/opt/local/libexec/qt4/include -F/opt/local/libexec/qt4/Library/Frameworks -F/opt/local/libexec/qt4/lib -o qtdirs.o qtdirs.cpp :info:configure make: /usr/bin/g++-4.2: No such file or directory :info:configure make: *** [qtdirs.o] Error 1
while I see that I have /usr/bin/g++ instead in /usr/bin:
/usr/bin/g++ --version i686-apple-darwin10-llvm-g++-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00) Copyright (C) 2007 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Attachments (1)
Change History (6)
Changed 7 years ago by fvaccari
Attachment: | py27-pyqt4.main.log added |
---|
comment:1 follow-up: 5 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | michaelld@… removed |
---|---|
Keywords: | snowleopard added; py27-pyqt4 Snow Leopard g++ removed |
Owner: | set to michaelld |
Status: | new → assigned |
Similar to another ticket you've filed, you're probably encountering this problem because you've received a binary of one of py27-pyqt4's dependencies (I would suspect qt4-mac) which was built on our Snow Leopard build server which is using Xcode 3.2.6 and therefore uses /usr/bin/g++-4.2, and that dependency bakes this compiler choice into the files that it installs, and dependencies use that compiler choice instead of the one MacPorts tells them to use at the time. But you have Xcode 4.2 installed, which does not provide /usr/bin/g++-4.2 anymore. It is wrong for build systems to bake compiler values into themselves for use by dependencies, but it is difficult to explain this problem to software developers and convince them to stop doing so.
comment:2 Changed 7 years ago by fvaccari
No idea how different the two compilers are, I did a very ignorant test doing
sudo ln -s /usr/bin/llvm-g++-4.2 /usr/bin/g++-4.2
before installing. Configuration step was ok and it is now building... Will take its time, I'll update later with the result.
comment:3 Changed 7 years ago by fvaccari
Installation successful. Don't know how safe it is, but it worked...
comment:4 Changed 7 years ago by michaelld (Michael Dickens)
Resolution: | → wontfix |
---|---|
Status: | assigned → closed |
Thanks for the engaged reporting. I'm going to close this ticket.
comment:5 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to ryandesign:
that dependency bakes this compiler choice into the files that it installs
The dependency is actually python27. I've filed a bug report for this: #56458.
Replying to fvaccari:
No idea how different the two compilers are, I did a very ignorant test doing
sudo ln -s /usr/bin/llvm-g++-4.2 /usr/bin/g++-4.2before installing. Configuration step was ok and it is now building... Will take its time, I'll update later with the result.
That is not a good idea. Although llvm-gcc-4.2 is meant to be very compatible with gcc-4.2, in some cases it isn't. For example, python33 and later can build with gcc-4.2 but not with llvm-gcc-4.2.
Replying to michaelld:
Thanks for the engaged reporting. I'm going to close this ticket.
Ports should be UsingTheRightCompiler. This report shows that py27-pyqt4 isn't. The problem might be in the python 1.0 portgroup, in which case the problem should be fixed there so that all python modules can benefit.
the error log