Any one up for OSX work.

If I recall correctly, ppython is a Windows wrapper EXE that sets up your path correctly to find the Panda libraries and then executes the Python installed with Panda. I noticed when I built Linux that it didn’t come out of the build process (at least, not on a path where I could find it), so I wouldn’t be surprised if the same were true of OSX. You can probably just ignore it and instead set your PYTHONPATH and LD_LIBRARY_PATH variables correctly (or write your own ppython shell script that does this).

Best of luck,
Mark

ppython is generated by the makepanda build tool, but not by the ppremake build tool. The ppremake tool just uses whatever your system version of Python is (or whatever version you point it at in your Config.pp file).

David

Where, and how do I get direct? I don’t have a ‘libdirect.*’ in my /usr/local/panda/lib/ directory.

Do I have to do a seperate check out and build for direct?

pview is working fine - I downloaded a rabbit egg and loaded it into pview just fine.

Thanks for the help everyone.

Yes, direct is a separate checkout; it’s a peer of the panda tree.

David

Has anonymous permission to cvs been removed? :frowning:

I can’t ‘login’ as anonymous, nor can I ‘Browse CVS’ in source forge (Returns a ‘not found’).

Is there another way to get ‘direct’ ?

Sounds like a SourceForge issue. SourceForge wouldn’t let us remove anonymous access even if we wanted to; that’s the whole point of SourceForge’s existance. But the cvs server does occasionally hiccup.

David

Well I managed to checkout direct.
and I ran ‘ppremake’ in it, then ran ‘make install’.
And it built a few things but then had a link error:

Any advice on this?

Try adding “pipeline:c” to the list of libraries named in the OTHER_LIBS line in direct/src/deadrec/Sources.pp.

David

Well that worked, I had to rinse and repeat that process for a bunch of other libs as well.

So it built and installed fine (I think).

But now - when I open python interactive

Where do I get (or am I suppose to already have) pandac?
:confused:

pandac/PandaModules.py should be generated when you run genPyCode.

David

Okay I ran genPyCode and it generated a bunch of stuff :slight_smile:

But now I get the following:

That doesn’t look so healthy… but I get a window of 800x600 with nothing in it… which seems fine, but then if I do the next step of the tutorial (this is the first tutorial in the panda docs):

Definitely not healthy… is this behavior familiar to anyone here?

Thanks for your help.

Yikes! I’ve never seen that before–how about you, Roger, did you ever come across that while developing OSX?

I assume pview still runs fine without reporting these error messages?

It certainly sounds like something’s out of sync between panda and direct. There might be a problem in the large elapsed time (days?) between when you checked out panda and when you checked out direct, if some low-level changes have been added in the interim–if you haven’t done this already, it might be a good idea to cvs update all three trees (dtool, panda, direct), and then make install all three trees again. Maybe make clean install for good measure.

Other things you can try: you can follow the suggested advice, and set MallocHelp to try to figure out who’s generating the errant free(); that might give us a clue. I know nothing about this MallocHelp thing; I guess that’s an OSX feature.

Also, does it only happen when you open a window? For instance, suppose you set “window-type none” in your Config.prc file–do you still get error messages like this when you start?

David

Apple’s manpage on malloc (http://developer.apple.com/documentation/Darwin/Reference/ManPages/man3/malloc.3.html) describes MallocHelp and the other environment variables.

Essentially, apple’s build of the malloc tools (maybe only the debug or developer build; I can’t remember) is instrumented to cause it to spit out useful diagnostic information if it finds a handful of environment variables set. If you set the MallocHelp environment variable to any value, you will get the full list of options (which is also documented in the above manpage).

I do wonder at that message, though, because it sounds like something is trying to free memory it doesn’t own. Maybe this message should be showing up in Windows and/or Linux and isn’t? I’m not as familiar with either of their malloc packages as I am OS X… how do they respond if you pass a random number to free()?

They generally corrupt the heap and then crash messily. If something like this were happening on one of the standard builds, we’d certainly know about it by now. This has to be a problem specific to this build.

David

I’m following along eagerly; I’ve been looking to play with Python and some 3d stuff for a while. I’ve previously been toying around with Ogre3D, but the Ogre python bindings have been something of a trial to get working under Mac OS X (which is where I do my dev work).

I’ve gotten to the same place, so results are definitely repeatable, but I’m stuck as to how to proceed.

Wow No I have not experienced this problem. Were would I start with this.

Hmm Off the top of my head … Paul your checkout of direct is at least a week difrent from the lower branches of the tree. May be wotj looking at time sinking your checkout. Besides that hmmmmm

Just an Idea…

read the manpage 3 for malloc

Either get it to core or run python under gdb and set it to abort on error
Back trace and see if there are any clues in there!

I can assure you I had some big project up and running in panda.

Roger

Hey everyone!

I’m glad to see this port coming along so well!

I’ve been trying to follow along, but I seem to have gotten stuck while making the main panda branch:

cd ./src/putil && make install
g++ -ftemplate-depth-30 -c -o Opt3-osx/putil_putil_composite1.o -I. -I/Users/mtomczak/Panda3d/panda3d/panda -I../express -I../pandabase -I/usr/local/panda/include -I/Library/Frameworks/Python.framework/Headers    -O2 putil_composite1.cxx
In file included from animInterface.cxx:19,
                 from putil_composite1.cxx:1:
animInterface.h:25:23: error: cycleData.h: No such file or directory
animInterface.h:26:29: error: cycleDataReader.h: No such file or directory
animInterface.h:27:29: error: cycleDataWriter.h: No such file or directory
animInterface.h:28:28: error: pipelineCycler.h: No such file or directory
In file included from animInterface.cxx:20,
                 from putil_composite1.cxx:1:
clockObject.h:29:34: error: cycleDataStageReader.h: No such file or directory
clockObject.h:31:20: error: thread.h: No such file or directory
In file included from animInterface.cxx:21,
                 from putil_composite1.cxx:1:
bamReader.h:35:32: error: pipelineCyclerBase.h: No such file or directory

I recently synced to the head of the CVS repository, and I’m afraid I can’t find these files anywhere. Does anyone know where I should be looking?

Thanks,
Mark

Did you put -d on the cvs update command to get new directories? These files are all in the new directory named panda/src/pipeline.

David

Ah, that’s got it! Thank you for the help. I always forget the nooks and crannies in CVS that other source control systems assume should be done automatically.

“CVS: The Worst Solution That Is Still Better Than Everything That Came Before It” :wink:

Now that my CVS repository contains all the needed pieces, I was also able to run pview. It looks good, though we may have a slight user interface problem: a lot of people are still going to have Macintoshes with only (gasp!) one mouse button. So I can’t rotate or scale my pview image.

Perhaps I can add some compile-time hooks to at least get pview to recognize meta-keys as substitutes for right and middle-click.

Take care,
Mark