hangs when building python26 & python27

Ryan Schmidt ryandesign at macports.org
Wed Aug 24 12:11:22 PDT 2011

On Aug 24, 2011, at 13:28, Mark Hattam wrote:

> Having just (22nd Aug) port upgraded python26 and python27 I ran into the same hang that I often get when building these ports ... I see in Terminal a "shell command cd" failed

Most MacPorts ports build by running a shell command that cd's to a directory and then runs a build command. So reporting that a shell command failed does not help isolate the problem.

> with a log file reference, but after that I appear to get a complete OS hang which is only resolved with a power-off/reboot.

It should not be possible for MacPorts to cause an OS hang. If your OS hangs, it is probably because you have other problems with your computer: bad hardware (RAM, CPU, logic board, hard drive), bad kernel extensions installed, etc.

> After restarting, the log is not there, I usually port clean and port upgrade again, and it builds through to completion without apparent problem.
> This time I copied the logfile to a usb stick before the machine hung (just).
> 3.06 GHz Core2Duo iMac, 4 GB RAM, OSX 10.6.8, MacPorts 2.0.1
> Below is the main.log for the build
> version:1
> :msg:main --->  Computing dependencies for python27:info:main .:debug:main Searching for dependency: gettext
> :debug:main Found Dependency: receipt exists for gettext
> :debug:main Searching for dependency: zlib
> :debug:main Found Dependency: receipt exists for zlib
> :debug:main Searching for dependency: openssl
> :debug:main Found Dependency: receipt exists for openssl
> :debug:main Searching for dependency: sqlite3
> :debug:main Found Dependency: receipt exists for sqlite3
> :debug:main Searching for dependency: db46
> :debug:main Found Dependency: receipt exists for db46
> :debug:main Searching for dependency: ncurses
> :debug:main Found Dependency: receipt exists for ncurses
> :debug:main Searching for dependency: gdbm
> :debug:main Found Dependency: receipt exists for gdbm
> :debug:main Searching for dependency: bzip2
> :debug:main Found Dependency: receipt exists for bzip2
> :debug:main Searching for dependency: readline
> :debug:main Found Dependency: receipt exists for readline
> :debug:main Searching for dependency: python_select
> :debug:main Found Dependency: receipt exists for python_select
> :msg:main 
> :debug:main Executing org.macports.main (python27)
> :debug:main Skipping completed org.macports.archivefetch (python27)
> :debug:main Skipping completed org.macports.fetch (python27)
> :debug:main Skipping completed org.macports.checksum (python27)
> :debug:main Skipping completed org.macports.extract (python27)
> :debug:main Skipping completed org.macports.patch (python27)
> :debug:main Skipping completed org.macports.configure (python27)
> :debug:build build phase started at Mon Aug 22 23:45:28 BST 2011
> :notice:build --->  Building python27
> :debug:build Executing org.macports.build (python27)
> :debug:build Environment: CPATH='/opt/local/include' CC_PRINT_OPTIONS_FILE='/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python27/python27/work/.CC_PRINT_OPTIONS' LIBRARY_PATH='/opt/local/lib' CC_PRINT_OPTIONS='YES' MACOSX_DEPLOYMENT_TARGET='10.6'
> :debug:build Assembled command: 'cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python27/python27/work/Python-2.7.2" && /usr/bin/make -j2 -w all MAKE="/usr/bin/make CC=/usr/bin/gcc-4.2"'
> :debug:build Executing command line:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python27/python27/work/Python-2.7.2" && /usr/bin/make -j2 -w all MAKE="/usr/bin/make CC=/usr/bin/gcc-4.2" 
> :info:build make: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python27/python27/work/Python-2.7.2'
> :info:build /usr/bin/install -c -d -m 755 Python.framework/Versions/2.7
> :info:build /usr/bin/gcc-4.2 -o Python.framework/Versions/2.7/Python -L/opt/local/lib -arch x86_64  -dynamiclib \
> :info:build 		-all_load libpython2.7.a -Wl,-single_module \
> :info:build 		-install_name /opt/local/Library/Frameworks/Python.framework/Versions/2.7/Python \
> :info:build 		-compatibility_version 2.7 \
> :info:build 		-current_version 2.7;
> :info:build Undefined symbols:
> :info:build   "_PyOS_snprintf", referenced from:
> :info:build       _Py_GetBuildInfo in libpython2.7.a(getbuildinfo.o)
> :info:build ld: symbol(s) not found
> :info:build collect2: ld returned 1 exit status
> :info:build make: *** [Python.framework/Versions/2.7/Python] Error 1
> :info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python27/python27/work/Python-2.7.2'
> :info:build shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python27/python27/work/Python-2.7.2" && /usr/bin/make -j2 -w all MAKE="/usr/bin/make CC=/usr/bin/gcc-4.2" " returned error 2
> :error:build Target org.macports.build returned: shell command failed (see log for details)
> :debug:build Backtrace: shell command failed (see log for details)
>    while executing
> "command_exec build"
>    (procedure "portbuild::build_main" line 8)
>    invoked from within
> "$procedure $targetname"
> :info:build Warning: the following items did not execute (for python27): org.macports.install org.macports.build org.macports.destroot
> :notice:build 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

Since this was not a clean build (note the lines saying "Skipping completed") you should definitely clean and try again; since you already did that and it worked, I'd consider the matter closed. Clean and try again anytime any error occurs in MacPorts.

More information about the macports-users mailing list