Cannot find the python SDK


#7

You were right about it pooping out someplace else :frowning:

I’m running Mandrake 10.0.

Here’s what I get that seems related to the problem:


#8

This is the relevant part of the error message:

dtool/src/prc/prcKeyRegistry.h:31:25: openssl/evp.h: No such file or directory

You need to get all the missing header files. In this case, it appears to be openssl-related.

  • Josh

#9

OK, got past that one, on to the next one…is there an emoticon for “sigh”?

I did a google of libpystub.so and came up dry after I perused all the RPMs installed and not installed and didn’t find libpystub.so in any of them with “python” in the RPM name. Then I had the bright idea of searching my own system and, as I’m sure you know, found it in panda3d-1.0.4/built/lib/libpystub.so

In the built/lib directory, libpystub.so and libdtoolconfig.so have ownerships of root/root while the rest of the files are owned by my user-id. Could this have come from compiling initially under my user-id and then compiling a second time under root?

I tried compiling under both root and my user-id. No joy.

Suggestions?


#10

OK, I’ve seen that one before.

Here’s the deal: makepanda builds the library ‘libpystub.so’, then makepanda builds the executable ‘interrogate’ which uses ‘libpystub.so’, then makepanda tries to run interrogate. In order for it to be able to run ‘interrogate’, the directory containing ‘libpystub.so’ needs to be in your shared-library path. Now, supposedly, makepanda contains the necessary code to put the built/lib directory into your LD_LIBRARY_PATH. But apparently, that code isn’t working. Somebody reported this problem before, but then the problem spontaneously went away, so we couldn’t diagnose it. Could you analyze?


#11

Tell me how to help and assume I’m fairly light in my exposure to Linux.

just did a “echo $LD_LIBRARY_PATH” as both user and root and it came back blank for both.


#12

I’m not sure this is going to be easy.

Makepanda doesn’t set LD_LIBRARY_PATH permanently. It only sets it for its child processes. Either it’s not really setting it, or it’s setting it and it’s having no effect.

I suppose I’d delete ‘interrogate’ and replace it with a script that prints out LD_LIBRARY_PATH. That will tell you whether or not makepanda is really setting LD_LIBRARY_PATH. The script would look like this:

#!/bin/sh
echo LD_LIBRARY_PATH=$LD_LIBRARY_PATH
exit 1

The ‘exit 1’ is an error code. It will prevent makepanda from going on and on and on.


#13

Lemme make sure I understand.

Delete or rename /built/bin/interrogate with a bash shell script which’ll be named “interrogate” as well?

And the script contains the three lines in your post?

And then I run a makepanda --everything with no other changes?


#14

Exactly right. You can always get the real ‘interrogate’ back by deleting it and letting ‘makepanda’ rebuild it. This is just a test to see what’s going on.

Sorry it’s taking me so long to respond. I’m visiting relatives. Starting tomorrow, I’m not going to be available hardly at all, so you may need to seek help from other people on this forum. There are some smart ones here.


#15

I appreciate any assistance, Josh.

OK, here’s the results:


erTo.h weakPointerToBase.h weakPointerToVoid.h weakReferenceList.h windowsRegistry.h zStream.h zStreamBuf.h express_composite1.cxx express_composite2.cxx
LD_LIBRARY_PATH=

Looks like LD_LIBRARY_PATH is blank.

Since Josh looks to be unavailable for a bit, does anyone have some thoughts on this?


#16

Hmm. Can you show me (a) the value of LD_LIBRARY_PATH before you start makepanda, and (b) the contents of the file /etc/ld.so.conf ? That is, I’d like to see the output of the following two commands:

env | grep LD_LIBRARY_PATH
cat /etc/ld.so.conf

Also, exactly what parameters are you passing to makepanda?

David


#17

to the "env | grep LD_LIBRARY_PATH " I got nothing.

I did an “env” just to make sure I hadn’t mispelled the search string and nothing even close.

to the “cat /etc/ld.so.conf”


include ld.so.conf.d/*.conf
/usr/X11R6/lib
/usr/lib/qt3/lib
/usr/local/lib
/usr/local/lib/libmcrypt
/home/allen/Downloads/Panda/panda3d-1.0.4/built/lib

I start makepanda with "makepanda/makepand.py --everything

I’ve got a “built” directory so it seems to me that the compile worked at least once but i couldn’t get panda to start in the manner that the docs suggested it should so I figured something was less then right.


#18

Ah ha! I think I have it.

Try running, as root, the command “ldconfig”. Then try to run makepanda again as a normal user.

David


#19

results of running ldconfig as root:

did a “makepanda/makepanda.py --everything” as user and got the following:


Starting compile in "panda/src/chan" (15 min 15 sec):

g++ -ftemplate-depth-30 -c -o built/tmp/chan_composite1.o -I"/usr/include/python2.3" -Ithirdparty/linux-libs-a/nspr/include -Ibuilt/tmp -Ipanda/src/chan -Ibuilt/include -O2 -DBUILDING_PANDA panda/src/chan/chan_composite1.cxx
built/include/pandaNode.h: In member function `virtual TypeHandle PandaNode::force_init_type()':
built/include/pandaNode.h:413: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:https://qa.mandrakesoft.com/> for instructions.

The above seems like the relevent stuff. If more is needed, let me know and I’ll run the compile again and post more.

Funny thing is, after my very first compile I was getting what seemed to be some Panda-related activity. The mouse pointer would turn into a cross-hair pointer while within the console window. If I clicked within the window, while the mouse pointer was a crosshair, that would terminate whatever it was that was running.

Allen


#20

Hmm, a compiler core dump, not such a good thing. What a bucket of worms this is! What version of the compiler are you running?


gcc --version

Did you try making clean by blowing away the built directory first?

The crosshairs thing certainly isn’t Panda behavior. I’ve never heard of that before. Does it happen when you compile other programs?

David


#21

I did’nt blow away the “built” directory. Should I have?

re: the crosshairs thing…

Nope. Never saw it before. I just assumed it was Panda-related. Not, hey?


#22

Yes, please do try starting from a clean build.

Nope, never heard of that crosshairs thing. Could it be a Python thing under Mandrake for some reason?

David


#23

Never saw the crosshair mouse pointer before and don’t have a clue why it might show up.

Scrubbed “built” and fired off another build. It pooped out on what looked like the absence of the TIFF libraries. I installed everything that looke vaguely TIFF-related, scrubbed “built” again and have another build going.

I’d cross my fingers but I can’t type that way.


#24

OK, need some help here.

I know Panda’s looking for a library but using the search string “gl” pulls up too big a list to install it all. There’s a heap of stuff with “glibs” in the name but it’s too big a list to install all of unless I have too.


#25

It’s looking for a file named libGL.so or libGL.a. On RedHat those files are in /usr/lib; they may be elsewhere (or not installed by default) on Mandrake.

David


#26

In Mandrake libGL.so is in /usr/X11R6/lib

I can’t find libGL.a on the system.