[SOLVED] Can I install Runtime insert SDK ?

In my case, I compiled libRocket like this:

cmake
-DCMAKE_INSTALL_PREFIX=../panda3d-1.8.0/thirdparty/linux-libs-x64/rocket
-DBUILD_PYTHON_BINDINGS=on

with installed Boost. Another try, like you mentioned, I ignored the thirdparty dir and just installed it on my “buildbot”. Without any success :-/

Well, did it build _rocketcore.so at all? Does “find . -name _rocketcore.so” turn up anything? The CMake output should also shed more light on what’s going on.

Is it possible that you have multiple versions of Python installed, and that you built Rocket against a different version of Python that your version of Panda was built against?

Yes, I’m quite sure, there was the _rocketcore.so (which made my surprise perfect XD). In the meantime, I deleted the virtual machine. Was Xubuntu 12.04 with just “standard” pre-installed Python, no other versions. Maybe I’ll set up an new VM tomorrow and save the output for you.

OK, well, that indicates that it’s simply an installation failure. If the file existed, but Python could not load it, then it simply wasn’t in the right directory (or built for the wrong version of Python as I suggested earlier).

Well, yesterday I’ve set up a new virtual machine, this time Ubuntu 12.10 Quantal. You’re thoughts were right, 2 different versions of python (2.7.3 and 3.2). I compiled libRocket like this:

cmake -DBUILD_PYTHON_BINDINGS=on -DPYTHON_EXECUTABLE=/usr/bin/python2.7
make -j 5
sudo make install

Compiling went through, and there was an _rocketcore.so in the Build-directory. Install output seems a bit strange:

buildbot@buildbot-virtual-machine:~/libRocket-master/Build$ sudo make install
[sudo] password for buildbot: 
[ 66%] Built target RocketCore
[ 83%] Built target RocketControls
[ 87%] Built target RocketDebugger
[ 90%] Built target _rocketcontrols
[100%] Built target _rocketcore
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/lib/x86_64-linux-gnu/libRocketCore.so.1.2.1
-- Installing: /usr/local/lib/x86_64-linux-gnu/libRocketCore.so.1
-- Installing: /usr/local/lib/x86_64-linux-gnu/libRocketCore.so
-- Installing: /usr/local/lib/x86_64-linux-gnu/libRocketControls.so.1.2.1
-- Installing: /usr/local/lib/x86_64-linux-gnu/libRocketControls.so.1
-- Installing: /usr/local/lib/x86_64-linux-gnu/libRocketControls.so
-- Removed runtime path from "/usr/local/lib/x86_64-linux-gnu/libRocketControls.so.1.2.1"
-- Installing: /usr/local/lib/x86_64-linux-gnu/libRocketDebugger.so.1.2.1
-- Installing: /usr/local/lib/x86_64-linux-gnu/libRocketDebugger.so.1
-- Installing: /usr/local/lib/x86_64-linux-gnu/libRocketDebugger.so
-- Removed runtime path from "/usr/local/lib/x86_64-linux-gnu/libRocketDebugger.so.1.2.1"
-- Installing: /usr/local/lib/python2.7/dist-packages/_rocketcore.so
-- Removed runtime path from "/usr/local/lib/python2.7/dist-packages/_rocketcore.so"
-- Installing: /usr/local/lib/python2.7/dist-packages/_rocketcontrols.so
-- Removed runtime path from "/usr/local/lib/python2.7/dist-packages/_rocketcontrols.so"
-- Installing: /usr/local/lib/python2.7/dist-packages/rocket.py
-- Installing: /usr/local/include/Rocket
-- Installing: /usr/local/include/Rocket/Debugger.h
-- Installing: /usr/local/include/Rocket/Controls.h
-- Installing: /usr/local/include/Rocket/Debugger
-- Installing: /usr/local/include/Rocket/Debugger/Debugger.h
-- Installing: /usr/local/include/Rocket/Debugger/Header.h
-- Installing: /usr/local/include/Rocket/Core.h
-- Installing: /usr/local/include/Rocket/Core
-- Installing: /usr/local/include/Rocket/Core/ElementUtilities.h
-- Installing: /usr/local/include/Rocket/Core/StyleSheet.h
-- Installing: /usr/local/include/Rocket/Core/DecoratorInstancer.h
-- Installing: /usr/local/include/Rocket/Core/ReferenceCountable.h
-- Installing: /usr/local/include/Rocket/Core/ElementReference.h
-- Installing: /usr/local/include/Rocket/Core/URL.h
-- Installing: /usr/local/include/Rocket/Core/Vector2.inl
-- Installing: /usr/local/include/Rocket/Core/FontDatabase.h
-- Installing: /usr/local/include/Rocket/Core/XMLParser.h
-- Installing: /usr/local/include/Rocket/Core/Colour.h
-- Installing: /usr/local/include/Rocket/Core/Property.h
-- Installing: /usr/local/include/Rocket/Core/SystemInterface.h
-- Installing: /usr/local/include/Rocket/Core/PropertyParser.h
-- Installing: /usr/local/include/Rocket/Core/EventInstancer.h
-- Installing: /usr/local/include/Rocket/Core/Variant.inl
-- Installing: /usr/local/include/Rocket/Core/Plugin.h
-- Installing: /usr/local/include/Rocket/Core/ElementDocument.h
-- Installing: /usr/local/include/Rocket/Core/WString.h
-- Installing: /usr/local/include/Rocket/Core/TypeConverter.inl
-- Installing: /usr/local/include/Rocket/Core/FontEffectInstancer.h
-- Installing: /usr/local/include/Rocket/Core/Vertex.h
-- Installing: /usr/local/include/Rocket/Core/FontGlyph.h
-- Installing: /usr/local/include/Rocket/Core/StringUtilities.h
-- Installing: /usr/local/include/Rocket/Core/Box.h
-- Installing: /usr/local/include/Rocket/Core/Geometry.h
-- Installing: /usr/local/include/Rocket/Core/Event.h
-- Installing: /usr/local/include/Rocket/Core/TypeConverter.h
-- Installing: /usr/local/include/Rocket/Core/Element.h
-- Installing: /usr/local/include/Rocket/Core/Dictionary.h
-- Installing: /usr/local/include/Rocket/Core/GeometryUtilities.h
-- Installing: /usr/local/include/Rocket/Core/Python
-- Installing: /usr/local/include/Rocket/Core/Python/Utilities.h
-- Installing: /usr/local/include/Rocket/Core/Python/Python.h
-- Installing: /usr/local/include/Rocket/Core/Python/ElementInstancer.h
-- Installing: /usr/local/include/Rocket/Core/Python/PickleTypeConverter.h
-- Installing: /usr/local/include/Rocket/Core/Python/VectorInterface.h
-- Installing: /usr/local/include/Rocket/Core/Python/Header.h
-- Installing: /usr/local/include/Rocket/Core/Python/Wrapper.h
-- Installing: /usr/local/include/Rocket/Core/Python/ConverterScriptObject.h
-- Installing: /usr/local/include/Rocket/Core/Python/ElementWrapper.h
-- Installing: /usr/local/include/Rocket/Core/Python/WrapperIter.h
-- Installing: /usr/local/include/Rocket/Core/Python/NameIndexInterface.h
-- Installing: /usr/local/include/Rocket/Core/Core.h
-- Installing: /usr/local/include/Rocket/Core/StreamMemory.h
-- Installing: /usr/local/include/Rocket/Core/Texture.h
-- Installing: /usr/local/include/Rocket/Core/PropertyDictionary.h
-- Installing: /usr/local/include/Rocket/Core/EventListenerInstancer.h
-- Installing: /usr/local/include/Rocket/Core/ElementInstancerGeneric.inl
-- Installing: /usr/local/include/Rocket/Core/Font.h
-- Installing: /usr/local/include/Rocket/Core/ScriptInterface.h
-- Installing: /usr/local/include/Rocket/Core/Colour.inl
-- Installing: /usr/local/include/Rocket/Core/FontEffect.h
-- Installing: /usr/local/include/Rocket/Core/ElementInstancer.h
-- Installing: /usr/local/include/Rocket/Core/ElementText.h
-- Installing: /usr/local/include/Rocket/Core/Stream.h
-- Installing: /usr/local/include/Rocket/Core/Debug.h
-- Installing: /usr/local/include/Rocket/Core/Log.h
-- Installing: /usr/local/include/Rocket/Core/ContextInstancer.h
-- Installing: /usr/local/include/Rocket/Core/PropertyDefinition.h
-- Installing: /usr/local/include/Rocket/Core/StringBase.inl
-- Installing: /usr/local/include/Rocket/Core/Platform.h
-- Installing: /usr/local/include/Rocket/Core/StyleSheetKeywords.h
-- Installing: /usr/local/include/Rocket/Core/Pool.inl
-- Installing: /usr/local/include/Rocket/Core/ConvolutionFilter.h
-- Installing: /usr/local/include/Rocket/Core/Vector2.h
-- Installing: /usr/local/include/Rocket/Core/BaseXMLParser.h
-- Installing: /usr/local/include/Rocket/Core/EventListener.h
-- Installing: /usr/local/include/Rocket/Core/Context.h
-- Installing: /usr/local/include/Rocket/Core/Decorator.h
-- Installing: /usr/local/include/Rocket/Core/ElementInstancerGeneric.h
-- Installing: /usr/local/include/Rocket/Core/ElementScroll.h
-- Installing: /usr/local/include/Rocket/Core/Factory.h
-- Installing: /usr/local/include/Rocket/Core/Header.h
-- Installing: /usr/local/include/Rocket/Core/Input.h
-- Installing: /usr/local/include/Rocket/Core/Dictionary.inl
-- Installing: /usr/local/include/Rocket/Core/PropertySpecification.h
-- Installing: /usr/local/include/Rocket/Core/RenderInterface.h
-- Installing: /usr/local/include/Rocket/Core/XMLNodeHandler.h
-- Installing: /usr/local/include/Rocket/Core/Math.h
-- Installing: /usr/local/include/Rocket/Core/Variant.h
-- Installing: /usr/local/include/Rocket/Core/StyleSheetSpecification.h
-- Installing: /usr/local/include/Rocket/Core/MathTypes.h
-- Installing: /usr/local/include/Rocket/Core/StringBase.h
-- Installing: /usr/local/include/Rocket/Core/Element.inl
-- Installing: /usr/local/include/Rocket/Core/String.h
-- Installing: /usr/local/include/Rocket/Core/FileInterface.h
-- Installing: /usr/local/include/Rocket/Core/Types.h
-- Installing: /usr/local/include/Rocket/Controls
-- Installing: /usr/local/include/Rocket/Controls/ElementDataGridCell.h
-- Installing: /usr/local/include/Rocket/Controls/DataSource.h
-- Installing: /usr/local/include/Rocket/Controls/Controls.h
-- Installing: /usr/local/include/Rocket/Controls/ElementFormControlTextArea.h
-- Installing: /usr/local/include/Rocket/Controls/DataQuery.h
-- Installing: /usr/local/include/Rocket/Controls/ElementDataGridRow.h
-- Installing: /usr/local/include/Rocket/Controls/Clipboard.h
-- Installing: /usr/local/include/Rocket/Controls/ElementFormControlDataSelect.h
-- Installing: /usr/local/include/Rocket/Controls/DataSourceListener.h
-- Installing: /usr/local/include/Rocket/Controls/ElementFormControlInput.h
-- Installing: /usr/local/include/Rocket/Controls/DataFormatter.h
-- Installing: /usr/local/include/Rocket/Controls/Header.h
-- Installing: /usr/local/include/Rocket/Controls/ElementDataGridExpandButton.h
-- Installing: /usr/local/include/Rocket/Controls/ElementFormControl.h
-- Installing: /usr/local/include/Rocket/Controls/SelectOption.h
-- Installing: /usr/local/include/Rocket/Controls/ElementForm.h
-- Installing: /usr/local/include/Rocket/Controls/ElementDataGrid.h
-- Installing: /usr/local/include/Rocket/Controls/ElementFormControlSelect.h
-- Installing: /usr/local/include/Rocket/Controls/ElementTabSet.h

(the removed runtime paths look weird)

And unfortunately, makepanda don’t find libRocket:

buildbot@buildbot-virtual-machine:~/panda3d-1.8.0$ python2.7 makepanda/makepanda.py --everything --verbose
WARNING: Could not locate thirdparty package eigen, excluding from build
Generating library cache...
Couldn't find library libAR
Couldn't find header file AR/ar.h
WARNING: Could not locate thirdparty package artoolkit, excluding from build
Couldn't find library libBulletSoftBody
Couldn't find library libBulletDynamics
Couldn't find library libBulletCollision
Couldn't find library libLinearMath
Couldn't find header file bullet/btBulletDynamicsCommon.h
WARNING: Could not locate thirdparty package bullet, excluding from build
Couldn't find library libRocketCore
Couldn't find library libRocketControls
WARNING: Could not locate thirdparty package rocket, excluding from build
Generating dependencies...
WARNING: file dependencies changed: ['built/models/maps/smiley.rgb']
WARNING: file dependencies changed: ['built/models/maps/smiley.rgb']
[  0%] Building C++ object built/tmp/p3dtoolutil_composite1.o
g++ -ftemplate-depth-30 -fPIC -c -o built/tmp/p3dtoolutil_composite1.o -Ibuilt/tmp -Ibuilt/include -I/usr/include/python2.7 -DMAKEPANDA= -Idtool/src/dtoolutil -pthread -msse2 -O2 -DBUILDING_DTOOL dtool/src/dtoolutil/p3dtoolutil_composite1.cxx
^CProcess exited with exit status 0 and signal code 2
Storing dependency cache.
Elapsed Time: 1 sec
keyboard interrupt
Build terminated.

Bullet doesn’t even compile, but that’s unimportant for me.

EDIT #1: compiles with installation in the thirdparty-dir. Will post the result later :slight_smile: btw, thanks for your patience, rdb

EDIT #2: compiles (still no Bullet, FFTW, artoolkit). Had to fix makepanda (which didn’t found libRocketCore.so.1,).
Line 5745:

oscmd("cd targetroot ; LD_LIBRARY_PATH=$LD_LIBRARY_PATH:usr%s/panda3d dpkg-shlibdeps --ignore-missing-info --warnings=2 -xpanda3d%s -xlibphysx-extras -Tdebian/substvars_dep debian/panda3d%s/usr/lib*/panda3d/lib*.so*" % (libdir, MAJOR_VERSION, MAJOR_VERSION))

Was before:

oscmd("cd targetroot ; LD_LIBRARY_PATH=usr%s/panda3d dpkg-shlibdeps --ignore-missing-info --warnings=2 -xpanda3d%s -xlibphysx-extras -Tdebian/substvars_dep debian/panda3d%s/usr/lib*/panda3d/lib*.so*" % (libdir, MAJOR_VERSION, MAJOR_VERSION))

Of course, I exported the path to libRocketCore.so.1 before running makepanda. But unfortunately, still no _rocketcore.so

If I copy my compiled _rocketcore.so to /usr/lib/python2.7/dist-packages, it is found but I get a segmentation fault.

OK, that makepanda issue is on my list. It doesn’t seem to detect libraries in /usr/lib/x86_64-linux-gnu for some reason.

The removed rpath entries are normal and expected.

As for _rocketcore.so, what’s the error you’re getting? You’re supposed to be able to import it from Python 2.7 without a problem. You say “no _rocketcore.so”, but clearly you’re acknowledging that it exists on your system, so I don’t know what you mean.

Uh, I’m sorry, didn’t express that clearly. libRocket is compiled, and there is an _rocketcore.so, located at ~/panda3d-1.8.0/thirdparty/linux-libs-x64/rocket/lib/python2.7/dist-packages/_rocketcore.so (the source dir) respectively /usr/local/lib/python2.7/dist-packages/_rocketcore.so (installed on the virtual machine). But in the built .deb-package, the file is missing and isn’t found.

joern@joern-Aspire-V3-571G:~/python/rocket-sample$ ppython test.py
Traceback (most recent call last):
  File "test.py", line 1, in <module>
    from panda3d.rocket import *
  File "/usr/share/panda3d/panda3d.py", line 200, in __getattr__
    for obj in dir(self.__manager__.libimport(lib)):
  File "/usr/share/panda3d/panda3d.py", line 129, in libimport
    raise ImportError, message
ImportError: DLL loader cannot find _rocketcore.

EDIT: WOOHOO! I have a workaround. I installed libRocket additionally to Panda3D. Just an addition to LD_LIBRARY_PATH is needed:

export LD_LIBRARY_PATH=§LD_LIBRARY_PATH:/usr/local/lib/x86_64-linux-gnu/

If someone don’t want to compile it, I can provide a quick’n’dirty package, which I made with checkinstall. It’s downloadable here from my Google Drive.

There are many builds for major distros.