I’ve been unable to build P4Python for an Intel Mac OS X 10.5.5.
These are my steps:
- I downloaded p4python.tgz (from http://filehost.perforce.com/perforce/r07.3/tools/) and expanded it into ‘P4Python-2007.3’.
- I downloaded p4api.tar (from http://filehost.perforce.com/perforce/r07.3/bin.macosx104x86/) and expanded it into ‘p4api-2007.3.143793’.
- I placed ‘p4api-2007.3.143793’ into ‘P4Python-2007.3’ and edited setup.cfg to set ‘p4_api=./p4api-2007.3.143793’.
-
I added the line ‘extra_link_args = [‘-framework’, ‘Carbon’]’ to setup.py after:
elif unameOut[0] == 'Darwin': unix = 'MACOSX' release = '104' platform = self.architecture(unameOut[4]) -
I ran
python setup.py buildand got:
$ python setup.py build
API Release 2007.3 running build running build_py running build_ext building 'P4API' extension gcc -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -DID_OS='MACOSX104X86' -DID_REL='2007.3' -DID_PATCH='151416' -DID_API='2007.3' -DID_Y='2008' -DID_M='04' -DID_D='09' -I./p4api-2007.3.143793 -I./p4api-2007.3.143793/include/p4 -I/build/toolchain/mac32/python-2.4.3/include/python2.4 -c P4API.cpp -o build/temp.darwin-9.5.0-i386-2.4/P4API.o -DOS_MACOSX -DOS_MACOSX104 -DOS_MACOSXX86 -DOS_MACOSX104X86 cc1plus: warning: command line option '-Wstrict-prototypes' is valid for C/ObjC but not for C++ P4API.cpp: In function âint P4Adapter_init(P4Adapter*, PyObject*, PyObject*)â: P4API.cpp:105: error: âPy_ssize_tâ was not declared in this scope P4API.cpp:105: error: expected `;' before âposâ P4API.cpp:107: error: âposâ was not declared in this scope P4API.cpp: In function âPyObject* P4Adapter_run(P4Adapter*, PyObject*)â: P4API.cpp:177: error: âPy_ssize_tâ was not declared in this scope P4API.cpp:177: error: expected `;' before âiâ P4API.cpp:177: error: âiâ was not declared in this scope error: command 'gcc' failed with exit status 1
which gcc returns /usr/bin/gcc and gcc -v returns:
Using built-in specs. Target: i686-apple-darwin9 Configured with: /var/tmp/gcc/gcc-5465~16/src/configure --disable-checking -enable-werror --prefix=/usr --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-transform-name=/^[cg][^.-]*$/s/$/-4.0/ --with-gxx-include-dir=/include/c++/4.0.0 --with-slibdir=/usr/lib --build=i686-apple-darwin9 --with-arch=apple --with-tune=generic --host=i686-apple-darwin9 --target=i686-apple-darwin9 Thread model: posix gcc version 4.0.1 (Apple Inc. build 5465)
python -V returns Python 2.4.3.
The newer version 2008.1 will build with Python 2.4.
I had posted the minor changes required to do that on my P4Python page, but they were rolled in to the official version.
Robert