Notes on building 1.5.2 for 64-bit ubuntu

I just finished building 1.5.2 on Ubuntu 8.04 (Hardy Heron). I wanted to jot down some notes that should help out anyone else trying to do the same thing. It should work with minimal changes on other ubuntu/debian versions, but no guarantees. I’ve compiled this HOWTO after the fact, meaning I haven’t tested this method out on a fresh install, so let me know if you run into any problems.

On a fresh ubuntu install, there are almost no development libraries/tools, so let’s get that out of the way:

sudo apt-get install build-essential bison libgtk2.0-dev libgl1-mesa-dev libglu1-mesa-dev libgl1-mesa-dev libxft-dev libosmesa-dev flex libssl-dev libpng-dev libtiff-dev python-dev

Find a suitable place to build the panda libraries. I keep a builds directory in my home directory for just such an occasion:

mkdir ~/builds
cd ~/builds

Get the complete panda3d source package and extract it:

wget http://panda3d.org/download/panda3d-1.5.2/panda3d-1.5.2.tar.gz
tar -xzvf panda3d-1.5.2.tar.gz
cd panda3d-1.5.2

Then use the incredibly easy makepanda script and tell it to build an installable debian package:

python makepanda/makepanda.py --everything --installer

Go grab a cup of coffee for you and 3400 of your closest friends (and take your time doing it). When you come back, hopefully you have a screen that looks similar to this:

-------------------------------------------------------------------
Makepanda Final Status Report
Makepanda: Compiler: LINUX
Makepanda: Optimize: 3
Makepanda: Keep Pkg: PYTHON ZLIB PNG JPEG TIFF OPENSSL FREETYPE PANDATOOL PANDAAPP 
Makepanda: Omit Pkg: MAYA6 MAYA65 MAYA7 MAYA8 MAYA85 MAYA2008 MAX6 MAX7 MAX8 MAX9 DX8 DX9 VRPN FMOD FMODEX OPENAL NVIDIACG FFTW ARTOOLKIT DIRECTCAM FFMPEG 
Makepanda: Verbose vs. Quiet Level: 1
Makepanda: Don't generate API reference manual
Makepanda: Version ID: 1.5.2
Makepanda: I cannot locate SDK for DX8
Makepanda: I have automatically added this command-line option: --no-dx8
Makepanda: I cannot locate SDK for DX9
Makepanda: I have automatically added this command-line option: --no-dx9
Makepanda: I cannot locate SDK for DIRECTCAM
Makepanda: I have automatically added this command-line option: --no-directcam
Makepanda: MAYA6 not yet supported under linux
Makepanda: I have automatically added this command-line option: --no-maya6
Makepanda: MAYA65 not yet supported under linux
Makepanda: I have automatically added this command-line option: --no-maya65
Makepanda: MAYA7 not yet supported under linux
Makepanda: I have automatically added this command-line option: --no-maya7
Makepanda: MAYA8 not yet supported under linux
Makepanda: I have automatically added this command-line option: --no-maya8
Makepanda: MAYA85 not yet supported under linux
Makepanda: I have automatically added this command-line option: --no-maya85
Makepanda: MAYA2008 not yet supported under linux
Makepanda: I have automatically added this command-line option: --no-maya2008
Makepanda: MAX6 not yet supported under linux
Makepanda: I have automatically added this command-line option: --no-max6
Makepanda: MAX7 not yet supported under linux
Makepanda: I have automatically added this command-line option: --no-max7
Makepanda: MAX8 not yet supported under linux
Makepanda: I have automatically added this command-line option: --no-max8
Makepanda: MAX9 not yet supported under linux
Makepanda: I have automatically added this command-line option: --no-max9
Makepanda: Caution: the built/lib directory is not in LD_LIBRARY_PATH
Makepanda: or /etc/ld.so.conf.  You must add it before using panda.
Makepanda: I cannot locate SDK for VRPN in thirdparty directory.
Makepanda: I have automatically added this command-line option: --no-vrpn
Makepanda: I cannot locate SDK for FFTW in thirdparty directory.
Makepanda: I have automatically added this command-line option: --no-fftw
Makepanda: I cannot locate SDK for FMOD in thirdparty directory.
Makepanda: I have automatically added this command-line option: --no-fmod
Makepanda: I cannot locate SDK for FMODEX in thirdparty directory.
Makepanda: I have automatically added this command-line option: --no-fmodex
Makepanda: I cannot locate SDK for OPENAL in thirdparty directory.
Makepanda: I have automatically added this command-line option: --no-openal
Makepanda: I cannot locate SDK for NVIDIACG in thirdparty directory.
Makepanda: I have automatically added this command-line option: --no-nvidiacg
Makepanda: I cannot locate SDK for FFMPEG in thirdparty directory.
Makepanda: I have automatically added this command-line option: --no-ffmpeg
Makepanda: I cannot locate SDK for ARTOOLKIT in thirdparty directory.
Makepanda: I have automatically added this command-line option: --no-artoolkit
Makepanda: Elapsed Time: 1 min 13 sec
-------------------------------------------------------------------

Provided your output is the same as (or similar to) mine, you should now have a file named panda3d_1.5.2_amd64.deb in the current directory. Install it with the following command:

sudo dpkg -i panda3d_1.5.2_amd64.deb

Many thanks to pro-rsoft and others on IRC who helped me out. Happy bamboo eating!

:smiley:

–EDIT–
Oh, and if anyone just wants to download the .deb file I generated, let me know, I’d be happy to stick it up somewhere for one off downloads, I just don’t have anywhere to stick it long-term.
–EDIT–

Well, that looks pretty nice and clean. Now we just need OpenAL, FFMPeg, and all those other libraries in 64-bit versions.

dont we allready do? discourse.panda3d.org/viewtopic.php?p=21919#21919