Python 3.0 + py30-readline on OS X (MacPorts)


Python 3.0 (release) seems to be in MacPorts now, but the py30-readline package fails to build:

--->  Building py30-readline
Error: Target org.macports.build returned: shell command " \
cd "/opt/local/var/macports/build/_opt_local_var_ \
macports_sources_rsync.macports.org_release_ports \
_python_py30-readline/work/Python-3.0/Modules" && \
/opt/local/Library/Frameworks/Python.framework/ \
Versions/3.0/bin/python3.0 setup.py build " returned \
error 1
Command output: readline.c:396: warning: passing \
argument 1 of 'free' discards qualifiers from pointer \
target type... 

I fixed it with the following:

sudo port sync
sudo port install readline
sudo port install py30-readline

The last command will cause the error, but will leave the package unarchived in the following directory:

/opt/local/var/macports/build \
/_opt_local_var_macports_sources_rsync. \
macports.org_release_ports_python_py30- \
readline/work/Python-3.0/Modules

Change to this directory and edit setup.py:

Add /opt/local/include and /opt/local/lib to the respective directory arrays at the top of the file, like so:

lib_dirs = [prefix + '/lib', "/opt/local/lib"]

and the same for the include directory. Save and exit the editor and run the port install command again. It should work now. I still got the following error after installation:

Error: Target org.macports.activate returned: Not a directory
Error: Status 1 encountered during processing.

but it didn’t seem to affect anything.

Share this post
  • Digg
  • StumbleUpon
  • Reddit
  • del.icio.us
  • Facebook
  • muti
  • Mixx
  • Google
  • laaik.it

Tags: , , ,

This entry was posted on Thursday, January 1st, 2009 at 10:35 pm and is filed under Code, OS X. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Leave a Reply