Jetson TX2 - Build Panda3D from sources for arm64

Hello,
I followed the instruction for building the Panda3D from source that related to Linux as described in the following link:
https://www.panda3d.org/download

And I got an error which say that I cannot use the flag msse2.
So, I masked the lines 1250-1251 in the file makepanda.py because i found that this flag is determined there…

I tried to compile again and then I got a new error of dtool_platform.h:77:2, which say the following:
error: #error “Con’t determine platform; please define DTOOL_PLATFORM in Config.pp file.”

and the following error also:
pandaSystem.cxx:
In static member function ‘static std::__cxx11::string PandaSystem::get_platform()’:
dtool/src/dtoolutil/pandaSystem.cxx:326:10: error: ‘DTOOL_PLATFORM’ was not declared in this scope

I saw the topic that was opened here:
https://discourse.panda3d.org/t/compiling-panda3d-on-jetson-tx2/24869

But I couldn’t find and information that I was able to use it…

Please advice.

Which precise version of the Panda3D source did you download?

Around a year a go I had deployed a few applications to Jetson TX1 and Jetson TX2 board I have. I don’t recall having a DTOOL_PLATFORM error. Might be something new since then. I did however at the time run into dependency issues because a few were not compatible with the ARM architecture of the board.Nvidia CG I know was one of them. I cant remember the others off the top of my head.

If and when you are able to get over this hurtle. There are a few dependency issues regarding rendering and shaders you will need to grab the latest version of the toolkit from NVIDIA for to compile against.

  • Test

Thanks rdb for your answer,
I downloaded version number 1.9.4.

Thanks thetestgame for your information.
Did you build the Panda3D from sources? If yes, which version did you use on the TX2?
If you will be able to remember\identify which dependencies I’m going to met, please share it with me.

I built 1.10 from source for the TX2. If I recall I just ran through all the standard dependencies the README specifies. The only one I could not do was the CG toolkit due to the Jetsons not supporting it.

Thanks thetestgame for your answer.
I will try to install also version 1.10 and update you with the results.

Just before I’m duing that…I want to verify that I understand you right:
Can you successfully work with Panda3D version 1.10 on the TX2? (Despite the fact that you couldn’t completely installed it)

Hello,
I downloaded version 1.10.0 from here:
https://github.com/panda3d/panda3d/tree/v1.10.0

In order to build the Panda3d for Linux I activated the following command from README.md file:
python makepanda/makepanda.py --everything --installer --no-egl --no-gles --no-gles2 --no-opencv

And I got the following report:
Version: 1.10.0
Platform: linux-aarch64
Using Python 2.7
Target OS: linux
Target arch: aarch64
WARNING: Could not locate thirdparty package artoolkit, excluding from build
WARNING: Could not locate thirdparty package fcollada, excluding from build
WARNING: Could not locate thirdparty package assimp, excluding from build
WARNING: Could not locate thirdparty package fftw, excluding from build
WARNING: Could not locate thirdparty package fmodex, excluding from build
WARNING: Could not locate thirdparty package nvidiacg, excluding from build
WARNING: Could not locate thirdparty package ode, excluding from build
WARNING: Could not locate thirdparty package openal, excluding from build
WARNING: Could not locate thirdparty package squish, excluding from build
WARNING: Could not locate thirdparty package openexr, excluding from build
WARNING: Could not locate thirdparty package vrpn, excluding from build
WARNING: Could not locate thirdparty package bullet, excluding from build
WARNING: Could not locate thirdparty package vorbis, excluding from build
WARNING: Could not locate thirdparty package opus, excluding from build
WARNING: Could not locate thirdparty package rocket, excluding from build
WARNING: Could not locate thirdparty package openssl, excluding from build
Generating dependencies…
WARNING: file depends on Python but is not in an ABI-specific directory: built/bin/p3dcparse
WARNING: file depends on Python but is not in an ABI-specific directory: built/bin/deploy-stub
[ 1%] Linking dynamic library built/lib/libp3dtool.so
built/tmp/p3dtoolutil_composite1.o: In function Filename::temporary(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Filename::Type)': p3dtoolutil_composite1.cxx:(.text+0x52e4): warning: the use oftempnam’ is dangerous, better use `mkstemp’
ln: failed to create symbolic link ‘built/lib/libp3dtool.so’: Function not implemented
Storing dependency cache.
Elapsed Time: 25 sec
The following command returned a non-zero value: ln -s libp3dtool.so.1.10 built/lib/libp3dtool.so
Build terminated.

As you can see, it seems that the platform problem I had before isn’t exist anymore.

But still it seems that the build process was not completed successfully.

Can you advise please what is the problem?

Thanks a lot!

Please do not check out v1.10.0. That is an old, obsolete version with bugs.

Instead, if you wish to get the latest stable, you should check out from the branch release/1.10.x.

It looks like you may be building on a filesystem that does not support symbolic links, such as FAT32. Are you able to build on a filesystem that does support it?

Thanks a lot rdb!
You are totally right!

I cannot explain why, but i decided to save the downloaded version in my SD card and tried to install from there.
When i moved the downloaded version material to the EMMC and started the installation process from there again, the problem disappeared and now I can successfully continue with the process.

I will download the suggested version and continue with it.

Thanks again!

Hello,
Just want to inform you that the build process of the version release/1.10.x was successfully completed and the .deb file was created on my TX2.
Also, the command:
sudo dpkg -i panda3d
.deb

was sucessfully done!

Thanks for all!