android-developer
https://developer.android.com
https://developer.android.com/ndk/downloads/older_releases
https://github.com/cocos2d/cocos2d-x-3rd-party-libs-bin/
#需要环境
cmake-3.18.5-Linux-x86_64.tar.gz cmake版本
cocos2d-x-3.10.zip 项目引擎(可以不编译,使用项目内自己的引擎文件, 如需编译建议使用ubuntu系统,centos趟了很多坑)
apache-ant-1.9.15-bin.tar.gz ant环境配置
android-ndk-r10e-linux-x86_64.bin ndk环境
commandlinetools-linux-6858069_latest.zip 最新版本的sdkmanager工具
tools_r25.2.3-linux.zip 支持android命令行打包的tools版本
部分需要翻墙.....
#glfw安装:
mkdir build
cd build
cmake .. -DBUILD_SHARED_LIBS=ON -G "Unix Makefiles"
make
make install
ldconfig
#android版本下载
./bin/sdkmanager --sdk_root=/usr/local/cmdline-tools "platform-tools" "platforms;android-19"
#环境变量参考(编译前之前设置的环境变量)
export COCOS_CONSOLE_ROOT=/usr/local/cocos2d-x-3.10/tools/cocos2d-console/bin
export PATH=$COCOS_CONSOLE_ROOT:$PATH
# Add environment variable COCOS_X_ROOT for cocos2d-x
export COCOS_X_ROOT=/usr/local
export PATH=$COCOS_X_ROOT:$PATH
# Add environment variable COCOS_TEMPLATES_ROOT for cocos2d-x
export COCOS_TEMPLATES_ROOT=/usr/local/cocos2d-x-3.10/templates
export PATH=$COCOS_TEMPLATES_ROOT:$PATH
# Add environment variable NDK_ROOT for cocos2d-x
export NDK_ROOT=/usr/local/android-ndk-r10e/
export PATH=$NDK_ROOT:$PATH
# Add environment variable ANT_ROOT for cocos2d-x
export ANT_ROOT=/usr/local/apache-ant/bin/
export PATH=$ANT_ROOT:$PATH
# Add environment variable ANDROID_SDK_ROOT for cocos2d-x
export ANDROID_SDK_ROOT=/usr/local/cmdline-tools
export PATH=$ANDROID_SDK_ROOT:$PATH
export PATH=$ANDROID_SDK_ROOT/tools:$ANDROID_SDK_ROOT/platform-tools:$PATH
#新版本的cmdline-tools已经舍弃 android 的打包命令,需要老版本的,目前下载的为 tools_r25.2.3-linux.zip
将cmdline-tools目录下tools备份, tools_r25.2.3-linux.zip 解压到 cmdline-tools目录下
注意:
/usr/local/cmdline-tools/build-tools/19.1.0/aidl 会用到32位的库
yum install libstdc++.i686
yum install glibc-devel.i686
yum install libzip.i686
yum install libgcc.i686
###########其余需注意
使用c++11 set(CMAKE_CXX_STANDARD 11)
ldconfig -p | grep glfw
cocos2dx 编译时 glfw3库报错
pkg_check_modules 找不到 glfw3库 -- 手动修改
vi cmake/Modules/FindGLFW3.cmake在
set(GLFW3_INCLUDE_DIRS "${GLFW3_INCLUDE_DIR}")
附近添加
set(GLFW3_DEFINITIONS -DGLFW_DLL)
编译cocos2dx部分测试代码报错 屏蔽
cmake -G "Unix Makefiles" -DBUILD_CPP_TESTS=OFF -DBUILD_LUA_LIBS=OFF -DBUILD_CPP_TESTS_DEFAULT=OFF -DBUILD_JS_TESTS_DEFAULT=OFF -DBUILD_JS_LIBS_DEFAULT=OFF ..