[p4python] Building 64-bit p4python on 2.4 kernel

Robert Cowham robert at vaccaperna.co.uk
Thu Jan 24 00:46:41 PST 2008

Without the 64 bit P4API libraries I don't fancy your chances.
Given that the 64 bit 2.6 libs work, I would be surprised if there any
problems using them - try a few tests.
Your only other alternative is to ask Perforce support for the 2.4 libs, and
you can ask them this question - they are the ones that know!


From: p4python-bounces at perforce.com [mailto:p4python-bounces at perforce.com]
On Behalf Of Andy Revak
Sent: 24 January 2008 00:29
To: p4python at perforce.com
Subject: [p4python] Building 64-bit p4python on 2.4 kernel

I am attempting to use the 2.4 (32-bit) api tar to build a 64 bit version of
the same thing.

Right now my workstation is running a 2.4 kernel and it seems as though the
only p4api's available for 2.4 kernel are 32 bit.  This is a problem because
I am trying to use the p4 python module that I am attempting to compile with
a 64-bit version of python. 

Here are the steps I have followed.
1. Modify setup.cfg to point to my downloaded copy of the perforce api
(version=kernel 2.4 x86)
2. in a shell set CFLAGS=-DOS_LINUX
3. run python setup.py install

Here is the error output I get:
running build_ext
building 'P4Client' extension
c++ -pthread -shared -DOS_LINUX build/temp.linux-x86_64-2.4/P4Clientmodule.o
-Lp4api-r07.3-linux24x86 -Lp4api-r07.3-linux24x86 /lib -lclient -lrpc -lsupp
-o build/lib.linux-x86_64-2.4/P4Client.so
/usr/bin/ld: skipping incompatible p4api-r07.3-linux24x86/lib/libclient.a
when searching for -lclient
/usr/bin/ld: cannot find -lclient
collect2: ld returned 1 exit status 
error: command 'c++' failed with exit status 1

The funny thing is, if i take the 64 bit version using the 2.6 kernel, and
point to that.  Everything compiles just fine.  I am afraid to use it to
connect to anything though for fear that it might hose something or cause a
machine to be unstable in a production environment.  Really the best
solution is for me to get my hands on a 64 bit version of the 2.4 *.a files
for r07.3.  That would be ideal.  Since the static lib files are given to me
in their existing form, I would imagine that I do not have the source code
to compile them myself as 64bit static libs which I could then use to
compile the extension.  Is there a difference between the static libs in the
2.4 and the 2.6 kernel?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.perforce.com/pipermail/p4python/attachments/20080124/766fd202/attachment-0001.html>

More information about the p4python mailing list