Panda for Ubuntu 12.04

If anyone is looking for a Panda build on Ubuntu 12.04 64-bit, you can get it from here. It includes all the optional packages except ARToolkit, VRPN, and the modules that don’t allow commercial reuse. Having said that, I can’t say I’ve tested every last corner of the build, so it’s possible that some of the more obscure functionality doesn’t work.

I’ve also put together a cheatsheet that might help other people who are trying to build Panda on Debian or Ubuntu.

I hope this helps someone!

For the record, you can well install Panda’s official 11.10 (Oneiric) packages on 12.04. All you need is two 11.10 packages – libcv2.1 and libhighgui2.1, which you can remove once the official builds are up.

Hi PeteX,

I wanted to say thanks for the build and the cheatsheet, I’ve used both and they’re awesome.

One note would be that when you use make, you can specify the number of threads just like makepanda, sooo:

make -j3

instead of

make

the 3 is (obviously) for the number of threads, which from what I’ve read number of cores +1 seems to be best.

Anywho, thank you for the cheatsheet!
~powerpup118

Glad it was useful and thanks for the suggestion, which I’ve added to the cheatsheet.

Hi PeteX,

I want to thank you for the awesome cheatsheet. I was able to compile the sdk and the runtime as well for Ubuntu 12.04 with some help from google searches and IRC. A few things that did not work as written in the cheatsheet:

The cmake line for Bullet should be like this:

cmake -DCMAKE_CXX_FLAGS="-fPIC" \
-DCMAKE_INSTALL_PREFIX=../panda3d-1.8.0/thirdparty/linux-libs-x64/bullet \
-DINCLUDE_INSTALL_DIR=../panda3d-1.8.0/thirdparty/linux-libs-x64/bullet/include/

The mistake is that you have written it as …/…/panda3d-1.8.0/thirdparty/linux-libs-x64/bullet/include/ (not …/…/ but …/).

Secondly, during the Bullet ‘make -j3’ line, I get an error:

In static member function ‘static _cl_context* btOpenCLUtils::createContextFromPlatform(cl_platform_id, cl_device_type, cl_int*, void*, void*, int, int)’:
Demos/SharedOpenCL/btOpenCLUtils.cpp:125:12: error: ‘CL_GL_CONTEXT_KHR’ was not declared in this scope
Demos/SharedOpenCL/btOpenCLUtils.cpp:127:12: error: ‘CL_WGL_HDC_KHR’ was not declared in this scope

So, to solve this, in Demos/SharedOpenCL/btOpenCLUtils.cpp, I need to include CL/cl_gl.h. This can be done by removing the #ifdef _WIN32 (line 49) and the corresponding #endif //_WIN32 lines.

Also, before compiling Panda3D 1.8 on a 64-bit architecture, I needed to change ‘lib64’ to ‘lib’ in makepanda/installpanda.py (at the beginning of the file). This is not needed if you are using the sources from the CVS repository.

On a side note, to compile the panda3d runtime, I installed firefox-dev package and changed

char* NP_GetMIMEDescription

in “direct/src/plugin_npapi/startup.h” and “direct/src/plugin_npapi/startup.cxx” to

const char* NP_GetMIMEDescription

Thanks for the suggestions, which I’ve incorporated into the cheatsheet. Please could you take a look and make sure I’ve done this clearly and accurately, especially with the second point. That problem didn’t affect me, so it’s hard to be sure I’ve explained it properly.

It might be worth raising a bug with the Bullet developers, because that problem doesn’t seem to be anything to do with Panda. It’s just that there are Linux configurations where it fails to build.

Hi PeteX,

Yes, you have made the corrections properly. I am using the default nvdia-updates driver which ships with Ubuntu 12.04. Also, I am using bullet-2.80-rev2531, if that makes any difference. I will file a bug report with the Bullet developers.

I needed a 32 bit .deb of Panda 3D 1.8.0 for Ubuntu 12.04, so I built one using the instructions from PeteX.

The only thing different is that I added the fmod library as well.

I uploaded the .deb onto my dropbox if anyone wants to use it, I’ve tested it on Ubuntu 12.04 using the Sandybridge graphics, and everything works fine.

dl.dropbox.com/u/91157204/panda … 0_i386.deb

Awesome - thanks, PeteX!

Hi PeteX, thanks for the info. I downloaded your 12.04 x86_64 .deb and noticed this:

dpkg -I panda3d1.8_1.8.0_amd64.deb

Depends:

nvidia-current

This is the nvidia binary driver and I’m guessing you added it by mistake. I missed it during install and ended up without graphics drivers for a brief period. If you are still able to edit your post to reflect this or rebuild the deb without this dependency I think that would be helpful.

does anyone have the link for installing panda in ubuntu 12.10?

I’m running xubuntu 12.10 and I was able to install the 12.04 binary posted above by first installing this:

launchpad.net/ubuntu/quantal/+p … thon1.46.1

at first a progress par went across in the top right of the ubuntu software center as it was preparing to install and then went away. Don’t be fooled like me by clicking the install button again or it will install it a second time.

nothing seemed to happen for a minute or two but then it actually started the install process.

Cheers