我试图使用../build-android.sh在ubuntu 16中构建一个android-go示例,但是我收到错误,
# runtime/cgo
_cgo_export.c:2:20: fatal error: stdlib.h: No such file or directory
#include <stdlib.h>
^
https://github.com/xlab/android-go/tree/master/examples/minimal
有没有人有任何建议?我已经仔细检查了lib6c头文件库。
完整的构建日志是
../build-android.sh
+ : 26
+ : /home/jsper/Downloads
+ : /home/jsper/Downloads/ndk-bundle
+ export ANDROID_API ANDROID_HOME ANDROID_NDK_HOME
+ /home/jsper/Downloads/tools/bin/sdkmanager --update
[=======================================] 100% Computing updates...
+ /home/jsper/Downloads/tools/bin/sdkmanager ndk-bundle
[=======================================] 100% Computing updates...
+ rm -rf android/toolchain
+ /home/jsper/Downloads/ndk-bundle/build/tools/make_standalone_toolchain.py --install-dir=android/toolchain --arch=arm --api=26 --stl=libc++
+ rm -rf android/toolchain/sysroot/usr
+ cp -r /home/jsper/Downloads/ndk-bundle/platforms/android-26/arch-arm/usr android/toolchain/sysroot/usr
+ mkdir -p android/app/src/main/jniLibs/armeabi-v7a
+ GOOS=android
+ GOARCH=arm
+ GOARM=7
+ go get -d
+ CC=/home/jsper/go/src/github.com/xlab/android-go/examples/minimal/android/toolchain/bin/arm-linux-androideabi-gcc
+ CXX=/home/jsper/go/src/github.com/xlab/android-go/examples/minimal/android/toolchain/bin/arm-linux-androideabi-g++
+ CGO_ENABLED=1
+ CGO_CFLAGS=-march=armv7-a
+ GOOS=android
+ GOARCH=arm
+ GOARM=7
+ go build -i -buildmode=c-shared -o android/app/src/main/jniLibs/armeabi-v7a/libgomain.so
# runtime/cgo
_cgo_export.c:2:20: fatal error: stdlib.h: No such file or directory
#include <stdlib.h>
^
compilation terminated.
答案 0 :(得分:5)
您是否安装了build-essential软件包?正如我所读,有时候lib没有正确安装。所以重新安装可能有所帮助。
请尝试:
sudo apt-get update
sudo apt-get install build-essential
答案 1 :(得分:4)
https://github.com/xlab/android-go/tree/master/examples/minimal使用:
compileSdkVersion = 25
buildToolsVersion = '25.0.0'
https://github.com/xlab/android-go/blob/master/examples/minimal/android/app/build.gradle 中的
您正在使用26
/home/jsper/Downloads/ndk-bundle/build/tools/make_standalone_toolchain.py --install-dir=android/toolchain --arch=arm --api=26 --stl=libc++
您需要安装具有正确版本的NDK
答案 2 :(得分:1)
我从来没有收到过允许我建立项目的答案,所以我会给自己答案。