dji-sdk / Guidance-SDK

The official Guidance SDK package for Windows, Ubuntu and XU3.
134 stars 98 forks source link

Add aarch64/arm64 shared libs #14

Open pquimby opened 8 years ago

pquimby commented 8 years ago

Please build shared libraries for 64b ARM platforms. This will add to the range of mobile computers that can be used with the onboard SDK and increase the computational resources available to users.

longlong2010 commented 8 years ago

You may try to use so/XU3/ibDJI_guidance.so. It works for Raspberry PI 3 Model B.

JJJJJJJack commented 7 years ago

I think XU3 is Armv7 and boards come after that, like the C2, is Armv8 and the library provided is not compatible.

tangketan commented 7 years ago

@pquimby Would you please provide the exact compiler? We can try building the library with specified compiler.

JJJJJJJack commented 7 years ago

Hi Tangketan,

Thanks for the reply. The compiler I'm using on the Odroid C2 is as follow:

odroid@odroid64:~$ gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/aarch64-linux-gnu/5/lto-wrapper Target: aarch64-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.1' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-arm64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-arm64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-arm64 --with-arch-directory=aarch64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu Thread model: posix gcc version 5.4.0 20160609 (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.1)

Which I think is aarch64-linux-gnu-gcc. Please email me back if you need more information.

Regrads, Jack

On Mon, Aug 8, 2016 at 11:09 PM, tangketan notifications@github.com wrote:

@pquimby https://github.com/pquimby Would you please provide the exact compiler? We can try building the library with specified compiler.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/dji-sdk/Guidance-SDK/issues/14#issuecomment-238441464, or mute the thread https://github.com/notifications/unsubscribe-auth/AEo481xNPBHAIFXoUPmL9bkdh8IeMg9kks5qd-9UgaJpZM4IED5E .

Xiang He, Ph.D. Student Department of Mechanical Engineering University of Utah 1495 E. 100 S. Salt Lake City, Utah 84112 Design, Automation, Robotics & Control (DARC) Lab: www.kam.k.leang.com/academics University of Utah Robotics Center (UURC): http://robotics.coe.utah.edu

tangketan commented 7 years ago

I just update a so file compiled on 64-bit TX1. Yet the Ubuntu is 14.04. See if you can use that so file.

top1944 commented 7 years ago

64-bit TX1 not work on snapgrogen410c

top1944 commented 7 years ago

Running command: "cmake /home/linaro/catkin_ws/src -DCATKIN_DEVEL_PREFIX=/home/linaro/catkin_ws/devel -DCMAKE_INSTALL_PREFIX=/home/linaro/catkin_ws/install -G Unix Makefiles" in "/home/linaro/catkin_ws/build"

-- The C compiler identification is GNU 4.9.2 -- The CXX compiler identification is GNU 4.9.2 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Using CATKIN_DEVEL_PREFIX: /home/linaro/catkin_ws/devel -- Using CMAKE_PREFIX_PATH: /opt/ros/kinetic -- This workspace overlays: /opt/ros/kinetic -- Found PythonInterp: /usr/bin/python (found version "2.7.9") -- Using PYTHON_EXECUTABLE: /usr/bin/python -- Using Debian Python package layout -- Using empy: /usr/bin/empy -- Using CATKIN_ENABLE_TESTING: ON -- Call enable_testing() -- Using CATKIN_TEST_RESULTS_DIR: /home/linaro/catkin_ws/build/test_results -- Looking for include file pthread.h -- Looking for include file pthread.h - found -- Looking for pthread_create -- Looking for pthread_create - not found -- Looking for pthread_create in pthreads -- Looking for pthread_create in pthreads - not found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Found Threads: TRUE
-- Found gtest sources under '/usr/src/gtest': gtests will be built -- Using Python nosetests: /usr/bin/nosetests-2.7 -- catkin 0.7.4 -- BUILD_SHARED_LIBS is on -- ~~~~~~~~~~~~~ -- ~~ traversing 1 packages in topological order: -- ~~ - guidance -- ~~~~~~~~~~~~~ -- +++ processing catkin package: 'guidance' -- ==> add_subdirectory(Guidance-SDK-ROS) -- Configuring done -- Generating done -- Build files have been written to: /home/linaro/catkin_ws/build

Running command: "make -j4 -l4" in "/home/linaro/catkin_ws/build"

Scanning dependencies of target guidanceNodeCalibration Scanning dependencies of target guidanceNode Scanning dependencies of target guidanceNodeTest [ 20%] [ 40%] [ 60%] [ 80%] Building CXX object Guidance-SDK-ROS/CMakeFiles/guidanceNodeCalibration.dir/src/GuidanceNodeCalibration.cpp.o Building CXX object Guidance-SDK-ROS/CMakeFiles/guidanceNode.dir/src/GuidanceNode.cpp.o Building CXX object Guidance-SDK-ROS/CMakeFiles/guidanceNodeCalibration.dir/src/DJI_utility.cpp.o Building CXX object Guidance-SDK-ROS/CMakeFiles/guidanceNodeTest.dir/src/GuidanceNodeTest.cpp.o [100%] Building CXX object Guidance-SDK-ROS/CMakeFiles/guidanceNode.dir/src/DJI_utility.cpp.o c++: internal compiler error: Killed (program cc1plus) Please submit a full bug report, with preprocessed source if appropriate. See file:///usr/share/doc/gcc-4.9/README.Bugs for instructions. Guidance-SDK-ROS/CMakeFiles/guidanceNodeTest.dir/build.make:54: recipe for target 'Guidance-SDK-ROS/CMakeFiles/guidanceNodeTest.dir/src/GuidanceNodeTest.cpp.o' failed make[2]: * [Guidance-SDK-ROS/CMakeFiles/guidanceNodeTest.dir/src/GuidanceNodeTest.cpp.o] Error 4 CMakeFiles/Makefile2:562: recipe for target 'Guidance-SDK-ROS/CMakeFiles/guidanceNodeTest.dir/all' failed make[1]: * [Guidance-SDK-ROS/CMakeFiles/guidanceNodeTest.dir/all] Error 2 make[1]: * Waiting for unfinished jobs.... Linking CXX executable /home/linaro/catkin_ws/devel/lib/guidance/guidanceNode /usr/bin/ld: skipping incompatible /home/linaro/catkin_ws/src/Guidance-SDK-ROS/lib/TK1/libDJI_guidance.so when searching for -lDJI_guidance //usr/local/lib/libDJI_guidance.so: file not recognized: File format not recognized collect2: error: ld returned 1 exit status Guidance-SDK-ROS/CMakeFiles/guidanceNode.dir/build.make:172: recipe for target '/home/linaro/catkin_ws/devel/lib/guidance/guidanceNode' failed make[2]: * [/home/linaro/catkin_ws/devel/lib/guidance/guidanceNode] Error 1 CMakeFiles/Makefile2:492: recipe for target 'Guidance-SDK-ROS/CMakeFiles/guidanceNode.dir/all' failed make[1]: * [Guidance-SDK-ROS/CMakeFiles/guidanceNode.dir/all] Error 2 Linking CXX executable /home/linaro/catkin_ws/devel/lib/guidance/guidanceNodeCalibration /usr/bin/ld: skipping incompatible /home/linaro/catkin_ws/src/Guidance-SDK-ROS/lib/TK1/libDJI_guidance.so when searching for -lDJI_guidance //usr/local/lib/libDJI_guidance.so: file not recognized: File format not recognized collect2: error: ld returned 1 exit status Guidance-SDK-ROS/CMakeFiles/guidanceNodeCalibration.dir/build.make:172: recipe for target '/home/linaro/catkin_ws/devel/lib/guidance/guidanceNodeCalibration' failed make[2]: * [/home/linaro/catkin_ws/devel/lib/guidance/guidanceNodeCalibration] Error 1 CMakeFiles/Makefile2:527: recipe for target 'Guidance-SDK-ROS/CMakeFiles/guidanceNodeCalibration.dir/all' failed make[1]: * [Guidance-SDK-ROS/CMakeFiles/guidanceNodeCalibration.dir/all] Error 2 Makefile:127: recipe for target 'all' failed make: * [all] Error 2 Invoking "make -j4 -l4" failed

lanyusea commented 7 years ago

c++: internal compiler error: Killed (program cc1plus)

it seems there is no enough memory left. Could you try make -j1 ?

On Thu, Oct 20, 2016 at 4:45 PM, top1944 notifications@github.com wrote:

Running command: "cmake /home/linaro/catkin_ws/src -DCATKIN_DEVEL_PREFIX=/home/linaro/catkin_ws/devel -DCMAKE_INSTALL_PREFIX=/home/linaro/catkin_ws/install -G Unix Makefiles" in "/home/linaro/catkin_ws/build"

-- The C compiler identification is GNU 4.9.2 -- The CXX compiler identification is GNU 4.9.2 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Using CATKIN_DEVEL_PREFIX: /home/linaro/catkin_ws/devel -- Using CMAKE_PREFIX_PATH: /opt/ros/kinetic -- This workspace overlays: /opt/ros/kinetic -- Found PythonInterp: /usr/bin/python (found version "2.7.9") -- Using PYTHON_EXECUTABLE: /usr/bin/python -- Using Debian Python package layout -- Using empy: /usr/bin/empy -- Using CATKIN_ENABLE_TESTING: ON -- Call enable_testing() -- Using CATKIN_TEST_RESULTS_DIR: /home/linaro/catkin_ws/build/ test_results -- Looking for include file pthread.h -- Looking for include file pthread.h - found -- Looking for pthread_create -- Looking for pthread_create - not found -- Looking for pthread_create in pthreads -- Looking for pthread_create in pthreads - not found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Found Threads: TRUE

-- Found gtest sources under '/usr/src/gtest': gtests will be built -- Using Python nosetests: /usr/bin/nosetests-2.7 -- catkin 0.7.4 -- BUILD_SHARED_LIBS is on -- ~~~~~~~~~~~~~ -- ~~ traversing 1 packages in topological order: -- ~~ - guidance -- ~~~~~~~~~~~~~ -- +++ processing catkin package: 'guidance' -- ==> add_subdirectory(Guidance-SDK-ROS) -- Configuring done -- Generating done -- Build files have been written to: /home/linaro/catkin_ws/build

Running command: "make -j4 -l4" in "/home/linaro/catkin_ws/build"

Scanning dependencies of target guidanceNodeCalibration Scanning dependencies of target guidanceNode Scanning dependencies of target guidanceNodeTest [ 20%] [ 40%] [ 60%] [ 80%] Building CXX object Guidance-SDK-ROS/CMakeFiles/guidanceNodeCalibration.dir/ src/GuidanceNodeCalibration.cpp.o Building CXX object Guidance-SDK-ROS/CMakeFiles/guidanceNode.dir/src/ GuidanceNode.cpp.o Building CXX object Guidance-SDK-ROS/CMakeFiles/ guidanceNodeCalibration.dir/src/DJI_utility.cpp.o Building CXX object Guidance-SDK-ROS/CMakeFiles/guidanceNodeTest.dir/src/ GuidanceNodeTest.cpp.o [100%] Building CXX object Guidance-SDK-ROS/CMakeFiles/ guidanceNode.dir/src/DJI_utility.cpp.o c++: internal compiler error: Killed (program cc1plus) Please submit a full bug report, with preprocessed source if appropriate. See file:///usr/share/doc/gcc-4.9/README.Bugs for instructions. Guidance-SDK-ROS/CMakeFiles/guidanceNodeTest.dir/build.make:54: recipe for target 'Guidance-SDK-ROS/CMakeFiles/guidanceNodeTest.dir/src/GuidanceNodeTest.cpp.o' failed make[2]: * [Guidance-SDK-ROS/CMakeFiles/guidanceNodeTest.dir/src/GuidanceNodeTest.cpp.o] Error 4 CMakeFiles/Makefile2:562: recipe for target 'Guidance-SDK-ROS/CMakeFiles/guidanceNodeTest.dir/all' failed make[1]: * [Guidance-SDK-ROS/CMakeFiles/guidanceNodeTest.dir/all] Error 2 make[1]: * Waiting for unfinished jobs.... Linking CXX executable /home/linaro/catkin_ws/devel/ lib/guidance/guidanceNode /usr/bin/ld: skipping incompatible /home/linaro/catkin_ws/src/ Guidance-SDK-ROS/lib/TK1/libDJI_guidance.so when searching for -lDJI_guidance //usr/local/lib/libDJI_guidance.so: file not recognized: File format not recognized collect2: error: ld returned 1 exit status Guidance-SDK-ROS/CMakeFiles/guidanceNode.dir/build.make:172: recipe for target '/home/linaro/catkin_ws/devel/lib/guidance/guidanceNode' failed make[2]: * [/home/linaro/catkin_ws/devel/lib/guidance/guidanceNode] Error 1 CMakeFiles/Makefile2:492: recipe for target 'Guidance-SDK-ROS/CMakeFiles/guidanceNode.dir/all' failed make[1]: * [Guidance-SDK-ROS/CMakeFiles/guidanceNode.dir/all] Error 2 Linking CXX executable /home/linaro/catkin_ws/devel/lib/guidance/ guidanceNodeCalibration /usr/bin/ld: skipping incompatible /home/linaro/catkin_ws/src/ Guidance-SDK-ROS/lib/TK1/libDJI_guidance.so when searching for -lDJI_guidance //usr/local/lib/libDJI_guidance.so: file not recognized: File format not recognized collect2: error: ld returned 1 exit status Guidance-SDK-ROS/CMakeFiles/guidanceNodeCalibration.dir/build.make:172: recipe for target '/home/linaro/catkin_ws/devel/lib/guidance/guidanceNodeCalibration' failed make[2]: * [/home/linaro/catkin_ws/devel/lib/guidance/guidanceNodeCalibration] Error 1 CMakeFiles/Makefile2:527: recipe for target 'Guidance-SDK-ROS/CMakeFiles/ guidanceNodeCalibration.dir/all' failed make[1]: * [Guidance-SDK-ROS/CMakeFiles/guidanceNodeCalibration.dir/all] Error 2 Makefile:127: recipe for target 'all' failed make: * [all] Error 2 Invoking "make -j4 -l4" failed

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/dji-sdk/Guidance-SDK/issues/14#issuecomment-255045947, or mute the thread https://github.com/notifications/unsubscribe-auth/ACo3iRdAp3vTK9bN5HO8aZDXjo3JgOeCks5q1ypEgaJpZM4IED5E .

Mara2020 commented 7 years ago

Can a shared library be built for 64b ARM platforms, specifically the NVidia TX1 with Ubuntu 16.04? I tried the TX1, arm, and xu3 ones available but it did not work. Thanks!

jinguanzhu commented 7 years ago

@tangketan ??

notsolowki commented 7 years ago

What parameters effect pitch of aircraft in the air. Inside flyc_param 800+ parameters, which ones directly effect tilt of aircraft in the air

On Feb 6, 2017 8:23 PM, "jinguanzhu" notifications@github.com wrote:

@tangketan https://github.com/tangketan ??

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/dji-sdk/Guidance-SDK/issues/14#issuecomment-277881737, or mute the thread https://github.com/notifications/unsubscribe-auth/AXcv_jr1SsUvZXx_Q0gAaLeCwJRq4qogks5rZ9W0gaJpZM4IED5E .

dhirajdhule commented 7 years ago

The so library file under so/tx1/ is not working on nvidia tx1, ubuntu 64.

TheRobotStudio commented 7 years ago

@tangketan Hello, I'm also interested to run the SDK on a 64bits Jetson TX2. Would it be possible to build and add the so library for aarch64 TX2 ? That would be great !

saurabh984 commented 6 years ago

What's the point of Open Sourcing something which you don't really support! Could you please update the libraries?

lanyusea commented 6 years ago

sorry :(

On Wed, Jul 19, 2017 at 2:30 PM, Saurabh Singh notifications@github.com wrote:

What's the point of Open Sourcing something which you don't really support! Could you please update the libraries?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/dji-sdk/Guidance-SDK/issues/14#issuecomment-316285910, or mute the thread https://github.com/notifications/unsubscribe-auth/ACo3iVv1StDZe-BBWcosTBbVY-LsGpHkks5sPaKVgaJpZM4IED5E .

mukhe027 commented 6 years ago

any updates of the libdji_guidance.so library file for Jetson Tx2 arm architecture. please let me know,

Thanks

saurabh984 commented 6 years ago

@lanyusea Can you please recompile and upload the new libdji_guidance.so?

TheRobotStudio commented 6 years ago

Any update on this topic ? Thanks!

samsdolphin commented 5 years ago

Dose any of you find the compatible library for the Jetson TX2? Thanks!

lshn commented 5 years ago

Dose any of you find the compatible library for the Jetson TX2? Thanks!