我使用AOSP来构建Android 我使用这些命令在我的Ubuntu 17.04上构建Android:
repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1
repo sync -j8
. build/envsetup.sh
lunch
make -j8
30分钟后出现此错误,有人知道如何修复它吗?
host Executable: tblgen (out/host/linux-x86/obj/EXECUTABLES/tblgen_intermediates/tblgen)
/usr/bin/ld: cannot find -lGL
collect2: ld returned 1 exit status
/usr/bin/ld: cannot find -lGL
/usr/bin/ld: cannot find -lGL
make: *** [out/host/linux-x86/obj/lib/libGLES_CM_translator.so] Error 1
make: *** Waiting for unfinished jobs....
collect2: ld returned 1 exit status
collect2: ld returned 1 exit status
答案 0 :(得分:1)
使用这些解决方案可以解决问题:
-lGL
错误:sudo apt-get install libgl1-mesa-dev:i386
sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
-lX11
错误:将此行LOCAL_LDLIBS += -lX11
添加到文件中
development/tools/emulator/opengl/host/renderer/Android.mk
答案 1 :(得分:1)
您似乎还没有完全遵循“建立构建环境”说明。
我看到你正在尝试在Ubuntu 17上构建Android Ice Cream Sandwich(4.0.1) - 请注意,这不是受支持的构建/主机环境,可能无法正常运行。
看起来您的libx11-dev和libgl1-mesa-dev库的安装配置错误或缺失(或者他们的Ubuntu 17等价物被命名)。
我建议安装Ubuntu 14并尝试使用Android L或N.
答案 2 :(得分:0)
您缺少libGL.so
个文件。这是OpenGL库。确保安装了相应的OpenGL库,它是搜索路径的一部分(请参阅-L
指令)。