Opened 11 years ago

Closed 11 years ago

#41646 closed defect (worksforme)

Python 3.3.3 upgrade staging error

Reported by: samuelandjw Owned by: jyrkiwahlstedt
Priority: Normal Milestone:
Component: ports Version: 2.2.1
Keywords: Cc:
Port: python33

Description (last modified by ci42)

Hi,

On OS X 10.9. I tried to upgrade python33 from 3.3.2 to 3.3.3. Got error when macport was "Staging python33 into destroot".

--->  Computing dependencies for python33
--->  Fetching archive for python33
--->  Attempting to fetch python33-3.3.3_0.darwin_13.x86_64.tbz2 from http://jog.id.packages.macports.org/macports/packages/python33
--->  Attempting to fetch python33-3.3.3_0.darwin_13.x86_64.tbz2 from http://packages.macports.org/python33
--->  Attempting to fetch python33-3.3.3_0.darwin_13.x86_64.tbz2 from http://lil.fr.packages.macports.org/python33
--->  Fetching distfiles for python33
--->  Verifying checksums for python33
--->  Extracting python33
--->  Applying patches to python33
--->  Configuring python33
--->  Building python33
--->  Staging python33 into destroot
Error: org.macports.destroot for port python33 returned: command execution failed
Please see the log file for port python33 for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_python33/python33/main.log
Error: Unable to upgrade port: 1

Attachments (1)

main.log (1.3 MB) - added by samuelandjw 11 years ago.
complete log file

Download all attachments as: .zip

Change History (11)

Changed 11 years ago by samuelandjw

Attachment: main.log added

complete log file

comment:1 Changed 11 years ago by ci42

Description: modified (diff)
Owner: changed from macports-tickets@… to jwa@…

In the future please use WikiFormatting and don't forget to Cc the maintainer.

comment:2 Changed 11 years ago by jyrkiwahlstedt

I can’t reproduce this. I have no 3.3.2 anymore, so can you check, what happens, if you make a clean install, i.e. uninstall 3.3.2 and then install 3.3.3? This shouldn’t change the behaviour, but if the same happens, then there is something odd in your system. What Xcode version are you using (mine is 5.0.2)? What does ’clang -v’ tell you (mine says 'clang-500.2.79’)?

comment:3 in reply to:  2 Changed 11 years ago by samuelandjw

Replying to jwa@…:

I can’t reproduce this. I have no 3.3.2 anymore, so can you check, what happens, if you make a clean install, i.e. uninstall 3.3.2 and then install 3.3.3? This shouldn’t change the behaviour, but if the same happens, then there is something odd in your system. What Xcode version are you using (mine is 5.0.2)? What does ’clang -v’ tell you (mine says 'clang-500.2.79’)?

My clang version is also clang-500.2.79. I did a clean install, and it failed the same way.

comment:4 Changed 11 years ago by ned-deily (Ned Deily)

That's a very strange log. My initial guess would be a problem with your system's installed header files. Perhaps try running xcode-select --install and then a clean install of python33. Whether or not you are upgrading from an installed 3.3.2 should not give that result.

comment:5 in reply to:  4 Changed 11 years ago by samuelandjw

Replying to nad@…:

That's a very strange log. My initial guess would be a problem with your system's installed header files. Perhaps try running xcode-select --install and then a clean install of python33. Whether or not you are upgrading from an installed 3.3.2 should not give that result.

I did reinstall the command line tools for OS X 10.9 (Late October). (xcode-select --install did not work) At one point, I even uninstalled all ports and reinstalled. python33 is not the only problematic port. When I compiled py33-objc and perl5.12, I ran into the same problem and the logs were very similar. At this point, I do suspect there is something wrong with my system, but I have no idea how to fix it.

comment:6 Changed 11 years ago by ned-deily (Ned Deily)

Take a look at /usr/include/objc-api.h. It should look like this. That's where the magic takes place to create the right preprocessor #define's for available objc features. It appears that is being skipped somehow. The things causing the compile errors, OBJC_ARC_UNAVAILABLE and OBJC_ROOT_CLASS and OBJC_EXPORT, are macros defined in objc-api.h. Some possibilities are that this file is not being included somehow or has been overwritten or the preprocessor stage is being skipped (unlikely). Do you have some funky environment variable set? Have you by any chance installed another version of llvm or clang, from MacPorts perhaps? Or had a pre-release version of Mavericks and/or Xcode installed? If you are very careful, you *could* just rm -r /usr/include and reinstall the Command Line Tools package, not something I would normally advise doing!

comment:7 in reply to:  6 Changed 11 years ago by samuelandjw

Replying to nad@…:

Take a look at /usr/include/objc-api.h....

1) On my machine, it is in the directory /usr/include/objc and it is exactly the one shown in the link. I copied the objc-ap.h to /usr/include/ and nothing changed.

2) I do have llvm-3.3 @3.3_1 and llvm-gcc42 @2336.11_1 installed through Macports and they were installed because gcc48 depends on them. I don't know of any other non-Apple llvm or clang installed on my machine.

3) I did rename /usr/include and reinstalled, but nothing has changed.

4) For the environment variables. See the following (output from export):

declare -x Apple_PubSub_Socket_Render="/tmp/launch-94VRtO/Render"
declare -x DBUS_LAUNCHD_SESSION_BUS_SOCKET="/tmp/launch-bxNGVJ/unix_domain_listener"
declare -x DISPLAY="/tmp/launch-tJttXR/org.macosforge.xquartz:0"
declare -x GPG_AGENT_INFO="/Users/wudegang/.gnupg/S.gpg-agent:493:1"
declare -x HOME="/Users/wudegang"
declare -x LC_CTYPE="UTF-8"
declare -x LOGNAME="wudegang"
declare -x OLDPWD="/tmp"
declare -x PATH="/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/texbin"
declare -x PWD="/Users/wudegang"
declare -x SECURITYSESSIONID="186a4"
declare -x SHELL="/bin/bash"
declare -x SHLVL="1"
declare -x SSH_AUTH_SOCK="/tmp/launch-6HljGE/Listeners"
declare -x TERM="xterm-256color"
declare -x TERM_PROGRAM="Apple_Terminal"
declare -x TERM_PROGRAM_VERSION="326"
declare -x TERM_SESSION_ID="8EE70AB5-92F0-497B-80D5-7659E98732EB"
declare -x TMPDIR="/var/folders/nw/_qg9sc8125s_r4g5vstsgp380000gn/T/"
declare -x USER="wudegang"
declare -x __CF_USER_TEXT_ENCODING="0x1F5:0:0"
declare -x __CHECKFIX1436934="1"

comment:8 Changed 11 years ago by ned-deily (Ned Deily)

This is getting off-topic here since the problem doesn't seem to be in MacPorts itself. I'm sure others here know more about this than I do. But you could try simply compiling that one file that fails and see if you can isolate things. Copying and pasting from the log while adding a -v to the clang call:

mkdir /tmp/test  && cd /tmp/test
curl -O http://hg.python.org/cpython/raw-file/v3.3.3/Mac/PythonLauncher/FileSettings.h
curl -O http://hg.python.org/cpython/raw-file/v3.3.3/Mac/PythonLauncher/FileSettings.m
rm -f ./FileSettings.o
/usr/bin/clang -v -pipe -Os -arch x86_64 -Wno-unused-result -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -o FileSettings.o -c ./FileSettings.m

I get:

ignoring nonexistent directory "/usr/local/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/bin/../lib/clang/5.0/include
 /usr/include
 /System/Library/Frameworks (framework directory)
 /Library/Frameworks (framework directory)
End of search list.

Hmm, do you have anything in /usr/local/include? Note that FileSettings.h does an #import <Foundation/Foundation.h>. I trace the chain of imports as:

/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h
8:#import <Foundation/NSObjCRuntime.h>
/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h
200:#import <objc/objc.h>
/usr/include/objc/objc.h
33:#include <objc/objc-api.h>

Good luck!

comment:9 in reply to:  2 Changed 11 years ago by samuelandjw

Replying to jwa@…:

I can’t reproduce this. I have no 3.3.2 anymore, so can you check, what happens, if you make a clean install, i.e. uninstall 3.3.2 and then install 3.3.3? This shouldn’t change the behaviour, but if the same happens, then there is something odd in your system. What Xcode version are you using (mine is 5.0.2)? What does ’clang -v’ tell you (mine says 'clang-500.2.79’)?

Thanks to Nad, I have determined that my case has nothing to do with the port itself. Now I have no problem installing the port.

comment:10 Changed 11 years ago by mf2k (Frank Schima)

Resolution: worksforme
Status: newclosed
Note: See TracTickets for help on using tickets.