Opened 13 years ago
Closed 12 years ago
#33606 closed defect (wontfix)
python27: build fails with segmentation fault
Reported by: | nathanielbreedlove@… | Owned by: | jyrkiwahlstedt |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.0.4 |
Keywords: | Cc: | ryandesign (Ryan Carsten Schmidt), erikmouw (Erik Mouw), bugports@…, nathanielbreedlove@… | |
Port: | python27 |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
Last login: Mon Mar 12 12:33:34 on console Nathans-MacBook-Pro:~ nathanbreedlove$ sudo port install wine Password: ---> Computing dependencies for wine ---> Dependencies to be installed: apple-gcc42 gst-plugins-base gnome-vfs gconf dbus-glib gtk-doc gnome-doc-utils py27-libxml2 python27 python27 py27-libxml2 rarian getopt gtk2 atk gdk-pixbuf2 jasper jpeg jpeg libpng libpng tiff tiff hicolor-icon-theme pango Xft2 xrender xorg-libX11 autoconf help2man p5.12-locale-gettext automake libtool xorg-bigreqsproto xorg-inputproto xorg-kbproto xorg-libXau xorg-xproto xorg-libXdmcp xorg-libxcb xorg-libpthread-stubs xorg-xcb-proto xorg-util-macros xorg-xcmiscproto xorg-xextproto xorg-xf86bigfontproto xorg-xtrans xorg-renderproto xrender cairo libpixman xorg-xcb-util shared-mime-info xorg-libXcomposite xorg-compositeproto xorg-libXext xorg-libXfixes xorg-fixesproto xorg-libXcomposite xorg-libXcursor xorg-libXcursor xorg-libXdamage xorg-damageproto xorg-libXi xorg-libXi xorg-libXinerama xorg-xineramaproto xorg-libXinerama xorg-libXrandr xorg-randrproto xorg-libXrandr orbit2 libidl policykit eggdbus gnome-mime-data gstreamer gzip texinfo gstreamer libtheora libvorbis libogg orc lcms mesa makedepend xorg-dri2proto xorg-glproto xorg-libXmu xorg-libXt xorg-libsm xorg-libice xorg-libsm xorg-libXxf86vm xorg-xf86vidmodeproto ---> Building python27 Error: Target org.macports.build returned: shell command failed (see log for details) Error: Failed to install python27 Log for python27 is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_python27/python27/main.log Error: The following dependencies were not installed: gst-plugins-base gnome-vfs gconf dbus-glib gtk-doc gnome-doc-utils py27-libxml2 python27 python27 py27-libxml2 rarian getopt gtk2 atk gdk-pixbuf2 jasper jpeg jpeg libpng libpng tiff tiff hicolor-icon-theme pango Xft2 xrender xorg-libX11 autoconf help2man p5.12-locale-gettext automake libtool xorg-bigreqsproto xorg-inputproto xorg-kbproto xorg-libXau xorg-xproto xorg-libXdmcp xorg-libxcb xorg-libpthread-stubs xorg-xcb-proto xorg-util-macros xorg-xcmiscproto xorg-xextproto xorg-xf86bigfontproto xorg-xtrans xorg-renderproto xrender cairo libpixman xorg-xcb-util shared-mime-info xorg-libXcomposite xorg-compositeproto xorg-libXext xorg-libXfixes xorg-fixesproto xorg-libXcomposite xorg-libXcursor xorg-libXcursor xorg-libXdamage xorg-damageproto xorg-libXi xorg-libXi xorg-libXinerama xorg-xineramaproto xorg-libXinerama xorg-libXrandr xorg-randrproto xorg-libXrandr orbit2 libidl policykit eggdbus gnome-mime-data gstreamer gzip texinfo gstreamer libtheora libvorbis libogg orc lcms mesa makedepend xorg-dri2proto xorg-glproto xorg-libXmu xorg-libXt xorg-libsm xorg-libice xorg-libsm xorg-libXxf86vm xorg-xf86vidmodeproto Error: Status 1 encountered during processing. To report a bug, see <http://guide.macports.org/#project.tickets> Nathans-MacBook-Pro:~ nathanbreedlove$
Attachments (3)
Change History (23)
comment:1 Changed 13 years ago by nathanielbreedlove@…
comment:2 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Description: | modified (diff) |
---|---|
Port: | python27 added |
Summary: | trying to install wine, followed steps but when i get to the actual wine part this happens → python27: build fails |
Please attach python27's main.log file so we can see what happened.
comment:3 follow-up: 5 Changed 13 years ago by nathanielbreedlove@…
sorry but i don't even know how to get that... I don't know how to navigate the terminal (didn't think i would have to with the guide). I might be able to attach it if you explain how to get python27's main log?
comment:4 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… added |
---|---|
Owner: | changed from macports-tickets@… to jwa@… |
To attach the logfile you would follow these steps, which don't involve any use of the Terminal:
- If you are reading this message in your email program, click the link to open the ticket into your web browser.
- Select and copy to the clipboard the logfile's path which was printed in the error message: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_python27/python27/main.log
- Click the "Attach file" button above in this ticket. This will load a new page.
- Click the "Choose file" button to bring up the file selection sheet.
- Press Command-Shift-G to access the "Go to folder" sheet.
- Press Command-V to paste the logfile path you copied before.
- Click the "Go" button to go to the pasted location and dismiss the "Go to folder" sheet.
- Click the "Choose" button to select the file and dismiss the file selection sheet.
- Click the "Add attachment" button to upload it and attach it to the ticket.
But I can already tell, by the fact that the output above shows MacPorts skipping directly to the Building phase, skipping the other phases that usually come before it, that this was not a clean build attempt, and that can cause build failures. So regardless what the incomplete log says, the first thing I'll ask you to do is to "sudo port clean python27" and try installing it again; cleaning and trying again is a good first thing to try anytime any port fails to build. If it fails again after cleaning, then we'll want to see that complete main.log file.
comment:5 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Oh, and:
Replying to nathanielbreedlove@…:
I don't know how to navigate the terminal (didn't think i would have to with the guide).
You should familiarize yourself with how to use the terminal, or rather the shell known as bash, which is what a terminal window shows you. Use of MacPorts, and of most of the software you can install using MacPorts, is rather dependent on your knowing how to get around a command line.
comment:6 Changed 13 years ago by erikmouw (Erik Mouw)
Same here while upgrading:
$ sudo port clean python27 ---> Cleaning python27 $ sudo port upgrade outdated ---> Computing dependencies for xorg-libxcb ---> Dependencies to be installed: python27 ---> Fetching archive for python27 ---> Attempting to fetch python27-2.7.2_4+universal.darwin_10.i386-x86_64.tgz from http://packages.macports.org/python27 ---> Fetching python27 ---> Verifying checksum(s) for python27 ---> Extracting python27 ---> Applying patches to python27 ---> Configuring python27 ---> Building python27 ---> Staging python27 into destroot Error: Target org.macports.destroot returned: shell command failed (see log for details) Error: Failed to install python27 Log for python27 is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python27/python27/main.log Error: The following dependencies were not installed: python27 Error: Unable to upgrade port: 1 To report a bug, see <http://guide.macports.org/#project.tickets>
I have attached the main.log.
It looks like the installation is looking for the file tclIndex in /System/Library/Frameworks/Tcl.framework/Versions/8.5/Resources/ , but that file can be found in /System/Library/Frameworks/Tcl.framework/Versions/8.5/Resource/Scripts/ .
I have tried to symlink /System/Library/Frameworks/Tcl.framework/Versions/8.5/Resource/tclIndex to that, but then the upgrade fails while looking for /usr/lib/tclIndex. This could of course
be a red herring, the cause might be somewhere else.
HTH,
Regards,
Erik
comment:8 Changed 13 years ago by nathanielbreedlove@…
I cleaned python 27 but it still didn't work and Erik has attached the main log
comment:9 Changed 13 years ago by bugports@…
At the end of the logfile:
:debug:destroot couldn't open "/System/Library/Frameworks/Tcl.framework/Versions/8.5/Resources/tclIndex": no such file or directory
right, the path to tclIndex on my Mac is: /System/Library/Frameworks/Tcl.framework/Versions/8.5/Resources/Scripts/tclIndex
comment:10 follow-up: 14 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | bugports@… added |
---|
The error message about tclIndex is completely irrelevant to this problem; ignore it.
erikmouw, your log shows the following:
:info:destroot ImportError: dlopen(/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/_xmlplus/parsers/pyexpat.so, 2): no suitable image found. Did find: :info:destroot /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/_xmlplus/parsers/pyexpat.so: mach-o, but wrong architecture
This means you have python27 already installed but for a different architecture. "sudo port -f uninstall python27", then "sudo port clean python27" and try again.
nathanielbreedlove, erikmouw's log showed a failure at destroot time but your log showed a problem at build time, so I don't believe the two of you are experiencing the same problem. Please attach your main.log.
comment:12 Changed 13 years ago by nathanielbreedlove@…
sorry guys but even with those instructions I seem to be unable to attach let alone find the main.log, thanks for the help but don't worry about it I'll just do without
comment:13 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
At which step of the instructions did you run into problems?
It's possible the problem you're experiencing building python27 is unique to your system, but on the other hand it could affect other users, and if so, we'd love the opportunity to fix it before other users encounter it. But we can't know what went wrong until we see the log.
comment:14 Changed 13 years ago by erikmouw (Erik Mouw)
Replying to ryandesign@…:
This means you have python27 already installed but for a different architecture. "sudo port -f uninstall python27", then "sudo port clean python27" and try again.
Almost there. I was wondering how that different architecture got there, but I found out it's the universal variant that fails. What happens is that python27 is installed, a package that is being updated requires python27+universal, which forces an upgrade of python27 to python27+universal:
$ sudo port -f uninstall python27 Password: ---> Unable to uninstall python27 @2.7.2_4, the following ports depend on it: ---> asciidoc @8.6.6_0+python27 ---> cfv @1.18.3_2+python27 ---> duplicity @0.6.17_1 ---> gnome-doc-utils @0.20.6_0+python27 ---> gtk-doc @1.18_0+python27 ---> libproxy @0.4.7_0+python27 ---> librsvg @2.34.2_0 ---> py27-boto @2.1.1_1 ---> py27-cairo @1.8.10_1 ---> py27-distribute @0.6.24_0 ---> py27-distribute @0.6.25_0 ---> py27-gnupg @0.3.2_0 ---> py27-gobject @2.26.0_1 ---> py27-gtk @2.22.0_1 ---> py27-libxml2 @2.7.8_0 ---> py27-lxml @2.3_0 ---> py27-numpy @1.6.1_1+atlas+gcc44 ---> py27-py @1.1.1_0 ---> py27-pyqt4 @4.9_0 ---> py27-sip @4.13.2_0 ---> py27-xml @0.8.4_0 ---> scons @2.0.1_1 ---> timedrive @0.4.0_0 Warning: Uninstall forced. Proceeding despite dependencies. ---> Deactivating python27 @2.7.2_4 ---> Unable to deactivate python27 @2.7.2_4, the following ports depend on it: ---> asciidoc @8.6.6_0+python27 ---> cfv @1.18.3_2+python27 ---> duplicity @0.6.17_1 ---> gnome-doc-utils @0.20.6_0+python27 ---> gtk-doc @1.18_0+python27 ---> libproxy @0.4.7_0+python27 ---> librsvg @2.34.2_0 ---> py27-boto @2.1.1_1 ---> py27-cairo @1.8.10_1 ---> py27-distribute @0.6.25_0 ---> py27-gnupg @0.3.2_0 ---> py27-gobject @2.26.0_1 ---> py27-gtk @2.22.0_1 ---> py27-libxml2 @2.7.8_0 ---> py27-lxml @2.3_0 ---> py27-numpy @1.6.1_1+atlas+gcc44 ---> py27-py @1.1.1_0 ---> py27-pyqt4 @4.9_0 ---> py27-sip @4.13.2_0 ---> py27-xml @0.8.4_0 ---> scons @2.0.1_1 ---> timedrive @0.4.0_0 Warning: Deactivate forced. Proceeding despite dependencies. ---> Cleaning python27 ---> Uninstalling python27 @2.7.2_4 ---> Cleaning python27 $ sudo port clean python27 ---> Cleaning python27 $ sudo port install python27 ---> Computing dependencies for python27 ---> Fetching archive for python27 ---> Attempting to fetch python27-2.7.2_4.darwin_10.x86_64.tgz from http://packages.macports.org/python27 ---> Fetching python27 ---> Verifying checksum(s) for python27 ---> Extracting python27 ---> Applying patches to python27 ---> Configuring python27 ---> Building python27 ---> Staging python27 into destroot ---> Installing python27 @2.7.2_4 ---> Activating python27 @2.7.2_4 To make python 2.7 the default (i.e. the version you get when you run 'python'), please run: sudo port select --set python python27 ---> Cleaning python27 $ sudo port upgrade outdated ---> Computing dependencies for xorg-libxcb ---> Dependencies to be installed: python27 ---> Fetching archive for python27 ---> Attempting to fetch python27-2.7.2_4+universal.darwin_10.i386-x86_64.tgz from http://packages.macports.org/python27 ---> Fetching python27 ---> Verifying checksum(s) for python27 ---> Extracting python27 ---> Applying patches to python27 ---> Configuring python27 ---> Building python27 ---> Staging python27 into destroot Error: Target org.macports.destroot returned: shell command failed (see log for details) Error: Failed to install python27 Log for python27 is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python27/python27/main.log Error: The following dependencies were not installed: python27 Error: Unable to upgrade port: 1 To report a bug, see <http://guide.macports.org/#project.tickets> $
With again the same error in the main.log as you spotted earlier. After that I tried "sudo port -f uninstall python27 ; sudo port clean python27 ; sudo port install python27 +universal", but that again fails with the same error.
In other words: I have narrowed it down to the universal variant. I will try to get rid of all universal variants so I can get away using plain python27, but that's a workaround and not a fix, of course.
Regards,
Erik
comment:15 follow-up: 16 Changed 13 years ago by erikmouw (Erik Mouw)
I figured out: because xorg-libxcb was compiled with +universal, it required python27 to be installed as +universal as well. Now why xorg-libxcb didn't require python27+universal in the past I don't understand, but apparently there was a change in xorg-libxcb. Still, that doesn't explain why python27+universal doesn't compile properly.
Regards,
Erik
comment:16 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to erikmouw@…:
I figured out: because xorg-libxcb was compiled with +universal, it required python27 to be installed as +universal as well. Now why xorg-libxcb didn't require python27+universal in the past I don't understand, but apparently there was a change in xorg-libxcb.
In an effort to move to more recent versions, xorg-libxcb's default version of python was changed from 2.6 to 2.7 in r74694 15 months ago. If you already had xorg-libxcb installed at that time, you probably would not have noticed this change or been affected by it until xorg-libxcb's version was increased in r90546 last week.
Still, that doesn't explain why python27+universal doesn't compile properly.
Ah, I now realize this is an error we are tracking in #32090. I workaround is given in comment:ticket:32090:10.
I still don't believe any of this discussion is relevant to the error nathanielbreedlove is reporting, since his error occurs at build time, not at destroot time.
comment:17 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Interesting, the error in the log is:
:info:build /bin/sh: line 1: 7456 Segmentation fault: 11 DYLD_FRAMEWORK_PATH=/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_python27/python27/work/Python-2.7.2: CC='/usr/bin/clang' LDSHARED='/usr/bin/clang -bundle -undefined dynamic_lookup -arch x86_64 -arch i386 -isysroot / -L/opt/local/lib -arch x86_64 -arch i386' OPT='-DNDEBUG -g -O3 -Wall -Wstrict-prototypes' ./python.exe -E ./setup.py -q --no-user-cfg build
As I suspected, since this was not a clean build attempt, there isn't much in the log before that to help us figure out why it happened, so please clean and try again.
Changed 13 years ago by nathanielbreedlove@…
Attachment: | main.3.log added |
---|
ok, i cleaned it (pretty sure i cleaned it before too), here it is
comment:18 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Summary: | python27: build fails → python27: build fails with segmentation fault |
---|
Thanks. This problem looks the same as #31720. In that ticket, the user decided to uninstall and reinstall all of MacPorts, and that fixed it for him, so we did no further troubleshooting. That's a bit drastic, but I have no other troubleshooting ideas at the moment.
comment:19 Changed 13 years ago by jmroot (Joshua Root)
Is this still a problem with 2.7.3? If so, please attach the crash log.
comment:20 Changed 12 years ago by jyrkiwahlstedt
Resolution: | → wontfix |
---|---|
Status: | new → closed |
Well, as we don't have and won't have a dependency variant control in ports, this seems to be a consequence of that. Python itself builds fine.
sorry didn't realize it would paste like this, may have to open new ticket or something cause i don't see an edit option anywhere