[PyKDE] Help needed with SIP
gvermeul at labs.polycnrs-gre.fr
gvermeul at labs.polycnrs-gre.fr
Tue Aug 21 23:31:06 BST 2001
Hello Jon,
> Hello Gerard
>
> I finally got it working last night.
>
> In fact the real problem was solved when you said to do -fno-rtti (the __ti3CCC error).
Mandrake 8 needs this.
>
Great, but I don't believe your statement about -fno-rtti very much (sorry).
Disappearence of the __ti3CCC error was related to running moc on my
system.
Please, could you return me a favor?
Get ftp://old-labs.polycnrs-gre.fr/pub/SAS/Vermeulen/PyMMM-0.0.1.tar.gz and
try to see if it builds and if you can run the program in the examples directory. (The
README.txt explains how to patch Python-2.1.1/distutils).
It will help me to release the next version of PyQwt (python bindings for
the Scientific and Engineering -- fast plotting of NumPy arrays -- Qwt
Library, see http://gerard.vermeulen.free.fr ) with distutils.
All you have to do is unpack the tar.gz, add one line to
/usr/lib/python2.1/distutils/unixccompiler (I think that the the preprocess()
function has never been used or tested and it has not implemented for MicroSoft
Visual C), type
python setup build_ext
python examples/xmmm.py
and tell me if it works.
The advantages of distutils with respect to automake/autoconf/libtool are
(1) smaller *.tar.gz archives (PyQwt would go from 250 kbyte to less than
100 kbyte -- the Gnu utilities eat a lot of disk space)
(2) smaller library size -- don't know why -- but PyQwt goes down from about
200 kbyte to 100 kbyte
(3) easier to program -- distutils feels still a little bit rough (it is clear
that nobody used the preprocess function), but is certainly easier to
understand than automake/autoconf/libtool.
(4) tell your friends that you are using something better (simpler!) than
the Gnu setup tools.
I have still another question related to my posting on sip-generated code,
that does not compile.
I encountered the same problem with your CCC class. Are you using sip-2.5?
I mean, really 2.5 and not 2.5preX. Please check with sip -V.
Because, I had to post-process the sip-generated code (done automatically
by setup.py) to make it compile.
CAVEAT-1: PyMMM-0.0.1.tar.gz requires sip-2.5.
CAVEAT-2: the link to PyMMM-0.0.1.tar.gz stays alive untill this weekend
('sas' is a french word for airlock, and pub/SAS gets wiped weekly).
> The remaining problem (the metaObject error) was that I was not running moc on CCC.cpp
but
I was so tied up with the sip problems that it took a while to realise this.
>
> What I finally did (again at your suggestion) is build the CCC class separately into a
shared library and then link with my sip bindings and everything sprang into life.
>
> Wonderful...
>
setup.py also handles the case if CCC is not part of a shared library.
Thanks in advance -- Gerard
---------------------------------------------
This message was sent using Endymion MailMan.
http://www.endymion.com/products/mailman/
More information about the PyQt
mailing list