Hello All! I am attempting to run the GroundSDK on a raspberry pi 4 (8GB) running Ubuntu 64:
Static hostname: team1-Hub
Icon name: computer
Machine ID:
Boot ID:
Operating System: Ubuntu 22.04.1 LTS
Kernel: Linux 5.15.0-1017-raspi
Architecture: arm64
Now I know the issue already you may be thinking is that its an ARM64, for that I installed Box64 emulator. I know this isn’t fool proof but i hoped it would work. I followed these instructions for Box64 AMD64 Emulator: Run x64 Software on a Raspberry Pi using Box64 - Pi My Life Up
Install: Successful.
I then followed this Ground SDK installation guide: Install and build GroundSdk - 7.3
Now for the NDK I can not install the lib86 libraries as I am on an arm cpu and not even the emulator can trick that. (Is it possible if I go to Ubuntu 32bit and install a 32bit emulator box86? I don’t think so but maybe) so I skipped installing lib86.
I got down to “Build GroundSDK” running command:
./build.sh -p groundsdk-android -t build -j
My Output:
[I] Starting task 'build'
[I] Starting task 'build-jni'
[I] Starting task 'build-common'
[I] Starting task 'build-common-armeabi-v7a'
[I] In '/opt': ALCHEMY_HOST_OUT_BUILD="/opt/out/groundsdk-android/host/build" ALCHEMY_HOST_OUT_STAGING="/opt/out/groundsdk-android/host/staging" ALCHEMY_TARGET_CONFIG_DIR="/opt/products/groundsdk/android/config" ALCHEMY_TARGET_OUT="/opt/out/groundsdk-android/armeabi-v7a" ALCHEMY_TARGET_PRODUCT="groundsdk" ALCHEMY_TARGET_PRODUCT_VARIANT="android" ALCHEMY_TARGET_SCAN_ADD_DIRS=" /opt/packages" ALCHEMY_TARGET_SCAN_PRUNE_DIRS=" /opt" ALCHEMY_USE_COLORS="1" ALCHEMY_WORKSPACE_DIR="/opt" ANDROID_ABI="armeabi-v7a" PARROT_BUILD_PROP_GROUP="drones" PARROT_BUILD_PROP_PRODUCT="groundsdk" PARROT_BUILD_PROP_PROJECT="groundsdk" PARROT_BUILD_PROP_UID="groundsdk-android-20221122-2129-0.0.0" PARROT_BUILD_PROP_VARIANT="android" PARROT_BUILD_PROP_VERSION="0.0.0" /opt/build/alchemy/scripts/alchemake -j 4 all sdk
Installing Android-24 toolchain from NDK
Traceback (most recent call last):
File "/opt/android-ndk-r17c/build/tools/make_standalone_toolchain.py", line 666, in <module>
main()
File "/opt/android-ndk-r17c/build/tools/make_standalone_toolchain.py", line 649, in main
create_toolchain(install_path, args.arch, api, gcc_path, clang_path,
File "/opt/android-ndk-r17c/build/tools/make_standalone_toolchain.py", line 423, in create_toolchain
copy_directory_contents(gcc_path, install_path)
File "/opt/android-ndk-r17c/build/tools/make_standalone_toolchain.py", line 147, in copy_directory_contents
os.makedirs(dst_dir)
File "/usr/lib/python3.10/os.py", line 215, in makedirs
makedirs(head, exist_ok=exist_ok)
File "/usr/lib/python3.10/os.py", line 215, in makedirs
makedirs(head, exist_ok=exist_ok)
File "/usr/lib/python3.10/os.py", line 215, in makedirs
makedirs(head, exist_ok=exist_ok)
[Previous line repeated 1 more time]
File "/usr/lib/python3.10/os.py", line 225, in makedirs
mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: '/opt/out'
ls: cannot access '/opt/out/groundsdk-android/armeabi-v7a/toolchain/bin/*-objdump': No such file or directory
/opt/build/alchemy/toolchains/linux/bionic/selection.mk:71: *** Failed to detect android toolchain prefix. Stop.
[E] Command failed (returncode=2)
Mainly it seems the issue is this: cannot access ‘/opt/out/groundsdk-android/armeabi-v7a/toolchain/bin/*-objdump’: No such file or directory.
I read that a github SDK pull for my specific NDK might work (I installed NDK Revision 17c per instructions on linked page) but I have found no solution.
WHAT ARE YOU TRYING TO DO?!:
I am trying to install a groundsdk or any SDK to a raspberry pi 4 that will act as a central hub to send GPS coordinates to the AIR SDK of a parrot anafi. I saw that Olympe does not have this feature though it could be installed.
Now if this is not possible at all. I am going to attach a raspberry pi 0 W with the airSDK on the parrot. I will then send the gps coordinates via zigbee protocol (from a PC with an AMD64 processor I suppose instead of a pi 4) to the pi 0 W (assume this works) the pi 0 w will then transmit the coordinates directly to the drone via airsdk (Idk if this part is possible). This is my work around. In the end I hope to do this for three of these parrots we have to make a mesh network swarm.
I’m not new to python or coding but I am new to this scale of things and any and every bit of expertise from the community would be helpful