[SOLVED]Error in rtdist build

Hi
I’ve built the latest git source successfully by:

python2.7 makepanda/makepanda.py --everything --no-ode --no-opencv --rtdist --distributor seifi --host http://127.0.0.1:9449/runtime/ --threads 3

After installation, i ran my server and tried packp3d, but i’ve got error:

$ ./built_seifi/stage/packp3d1.9.p3d -h
:downloader: [0x22d6210] begin GET [ http://127.0.0.1:9449/runtime/contents.xml?1427388483 ]
:downloader: [0x22d6210] begin GET [ http://127.0.0.1:9449/runtime/coreapi/linux_amd64/p3d_plugin.so ]
:downloader: [0x22e6e30] begin GET [ http://127.0.0.1:9449/runtime/images/images.xml ]
:downloader: [0x22e72f0] begin GET [ http://127.0.0.1:9449/runtime/panda3d/seifi_1.9/linux_amd64/panda3d.seifi_1.9.linux_amd64.xml ]
:downloader: [0x22e65f0] begin GET [ http://127.0.0.1:9449/runtime/images/images.mf.pz ]
:downloader: [0x22e1700] begin GET [ http://127.0.0.1:9449/runtime/egg/seifi_1.9/linux_amd64/egg.seifi_1.9.linux_amd64.xml ]
:downloader: [0x22e65f0] begin GET [ http://127.0.0.1:9449/runtime/panda3d/seifi_1.9/linux_amd64/panda3d.seifi_1.9.linux_amd64.mf.pz ]
Installing Panda3D
:downloader: [0x22e65f0] begin GET [ http://127.0.0.1:9449/runtime/egg/seifi_1.9/linux_amd64/egg.seifi_1.9.linux_amd64.mf.pz ]
Installing Panda3D egg loader
Failed to import VFSImporter:
Traceback (most recent call last):
  File "VFSImporter", line 4, in <module>
ImportError: /home/mehdi/.panda3d/hosts/127.0.0.1_930cb61b13e95041/panda3d/seifi_1.9/linux_amd64/panda3d/core.so: undefined symbol: _Z30DTOOL_PyObject_ComparePointersP7_objectS0_
Install complete.
Successfully joined thread: 0
Failure on startup.

Any idea?

Thanks in advance.

That symbol was added very recently. I think some part of your build may be outdated. Try making a clean rebuild.

OK, i’ve built everything again:

$ python2.7 makepanda/makepanda.py --everything --no-opencv --rtdist --distributor seifi --host http://127.0.0.1:9449/runtime/

Then

$ python2.7 makepanda/makepanda.py --runtime --distributor seifi --host http://127.0.0.1:9449/runtime/

After successful built:

$ sudo python2.7 ./makepanda/installpanda.py --outputdir=./built_seifi --prefix=/usr
$ sudo python2.7 ./makepanda/installpanda.py --outputdir=./built_seifi_rt --prefix=/usr --runtime

So far so good!
But when i tried to build a p3d file with new rtdist:

./runtime/packp3d1.9.p3d -o terrian.p3d -d terrian -m main.py -S mycert.pem
:downloader: [0x111a1c0] begin GET [ http://127.0.0.1:9449/runtime/contents.xml?1427486964 ]
:downloader: [0x111a1c0] begin GET [ http://127.0.0.1:9449/runtime/coreapi/linux_amd64/p3d_plugin.so ]
:downloader: [0x112c670] begin GET [ http://127.0.0.1:9449/runtime/images/images.xml ]
:downloader: [0x112cb30] begin GET [ http://127.0.0.1:9449/runtime/panda3d/seifi_1.9/linux_amd64/panda3d.seifi_1.9.linux_amd64.xml ]
:downloader: [0x112f370] begin GET [ http://127.0.0.1:9449/runtime/images/images.mf.pz ]
:downloader: [0x112a0e0] begin GET [ http://127.0.0.1:9449/runtime/egg/seifi_1.9/linux_amd64/egg.seifi_1.9.linux_amd64.xml ]
:downloader: [0x112f370] begin GET [ http://127.0.0.1:9449/runtime/panda3d/seifi_1.9/linux_amd64/panda3d.seifi_1.9.linux_amd64.mf.pz ]
Installing Panda3D
:downloader: [0x112f370] begin GET [ http://127.0.0.1:9449/runtime/egg/seifi_1.9/linux_amd64/egg.seifi_1.9.linux_amd64.mf.pz ]
Installing Panda3D egg loader
Install complete.
:HostInfo: Downloading contents file [ http://127.0.0.1:9449/runtime/contents.xml?1427486979 ]

:downloader: [0x2720050] begin GET [ http://127.0.0.1:9449/runtime/contents.xml?1427486979 ]
:HostInfo(warning): Successfully downloaded http://127.0.0.1:9449/runtime/contents.xml?1427486979
:PackageInfo: Package panda3d uses 127 MB
:PackageInfo: Package egg uses 6 MB
:AppRunner: Total Panda3D disk space used: 133 MB
:AppRunner: Configured max usage is: 2048 MB
:AppRunner: Freshening http://127.0.0.1:9449/runtime/panda3d/seifi_1.9/linux_amd64/panda3d.seifi_1.9.linux_amd64.import.xml
:downloader: [0x2ce37f0] begin GET [ http://127.0.0.1:9449/runtime/panda3d/seifi_1.9/linux_amd64/panda3d.seifi_1.9.linux_amd64.import.xml ]
Traceback (most recent call last):
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/showbase/Messenger.py", line 354, in __taskChainDispatch
    self.__dispatch(*eventTuple)
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/showbase/Messenger.py", line 412, in __dispatch
    method (*(extraArgs + sentArgs))
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/p3d/AppRunner.py", line 757, in __startIfReady
    __import__(moduleName)
  File "VFSImporter", line 149, in load_module
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/p3d/packp3d.py", line 224, in <module>
    makePackedApp(sys.argv[1:])
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/p3d/packp3d.py", line 214, in makePackedApp
    packager.endPackage()
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/p3d/Packager.py", line 2848, in endPackage
    if not package.close():
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/p3d/Packager.py", line 452, in close
    result = self.installMultifile()
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/p3d/Packager.py", line 554, in installMultifile
    self.freezer.done()
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/showutil/FreezeTool.py", line 887, in done
    self.__loadModule(mdef)
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/showutil/FreezeTool.py", line 975, in __loadModule
    fp = open(pathname, modulefinder.READ_MODE)
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/stdpy/file.py", line 139, in __init__
    raise IOError, message
IOError: No such file: main.py
:task(error): Exception occurred in PythonTask Messenger-default
Traceback (most recent call last):
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/p3d/AppRunner.py", line 635, in run
    taskMgr.run()
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/task/Task.py", line 503, in run
    self.step()
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/task/Task.py", line 461, in step
    self.mgr.poll()
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/showbase/Messenger.py", line 354, in __taskChainDispatch
    self.__dispatch(*eventTuple)
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/showbase/Messenger.py", line 412, in __dispatch
    method (*(extraArgs + sentArgs))
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/p3d/AppRunner.py", line 757, in __startIfReady
    __import__(moduleName)
  File "VFSImporter", line 149, in load_module
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/p3d/packp3d.py", line 224, in <module>
    makePackedApp(sys.argv[1:])
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/p3d/packp3d.py", line 214, in makePackedApp
    packager.endPackage()
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/p3d/Packager.py", line 2848, in endPackage
    if not package.close():
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/p3d/Packager.py", line 452, in close
    result = self.installMultifile()
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/p3d/Packager.py", line 554, in installMultifile
    self.freezer.done()
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/showutil/FreezeTool.py", line 887, in done
    self.__loadModule(mdef)
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/showutil/FreezeTool.py", line 975, in __loadModule
    fp = open(pathname, modulefinder.READ_MODE)
  File "/home/mehdi/Programming/Python/3D/Panda3D/panda3d/built_seifi/direct/stdpy/file.py", line 139, in __init__
    raise IOError, message
IOError: No such file: main.py
Successfully joined thread: 0
Failure on startup.

It can’t find my main.py in terrian directory.

$ ls ./terrian
512xA_LM.jpg  512xA_TX.jpg  main.py

I put terrian directory beside the new built or even in …/built_seifi/direct/, but it didn’t work.
So what i should do?
I’ve attached my build log: build.log (60.4 KB)

cd to the “terrian” directory before running the command, and omit the -d option, like:

cd terrian
../runtime/packp3d1.9.p3d -o ../terrian.p3d -m main.py -S mycert.pem

Or you could use the -m option like “-m terrian/main.py”.

Nice!
Now my rtdist works with my localhost server without any needs of internet.
Thanks alot.