Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么从c++;源目标android非常大 我在C++中有一个第三方SDK源,用CMakelist.txt。当目标android时,生成结果。文件大小为109MB。同时,目标Mac.a文件只有19MB_Android_C++_Cmake - Fatal编程技术网

为什么从c++;源目标android非常大 我在C++中有一个第三方SDK源,用CMakelist.txt。当目标android时,生成结果。文件大小为109MB。同时,目标Mac.a文件只有19MB

为什么从c++;源目标android非常大 我在C++中有一个第三方SDK源,用CMakelist.txt。当目标android时,生成结果。文件大小为109MB。同时,目标Mac.a文件只有19MB,android,c++,cmake,Android,C++,Cmake,删除.a文件中的调试信息后,文件大小更改为46MB。与19MB相比仍然非常大 解压缩.a文件。ELF格式的.o文件比Mach-o格式的文件大。这是正确的吗 为android构建时使用的方法 cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake -DANDROID_NDK=$ANDROID_NDK -DANDROID_ABI=arm64-v8a -DANDROID_TOOL

删除.a文件中的调试信息后,文件大小更改为46MB。与19MB相比仍然非常大

解压缩.a文件。ELF格式的.o文件比Mach-o格式的文件大。这是正确的吗

为android构建时使用的方法

cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake
    -DANDROID_NDK=$ANDROID_NDK
    -DANDROID_ABI=arm64-v8a
    -DANDROID_TOOLCHAIN=clang
    -DANDROID_PLATFORM=android-23
    -DANDROID_STL=c++_shared ..
    make
为mac构建

cmake -DOPENSSL_ROOT_DIR=/usr/local/Cellar/openssl@1.1/1.1.1g
    -DOPENSSL_LIBRARIES=/usr/local/Cellar/openssl@1.1/1.1.1g/lib
    -DOPENSSL_INCLUDE_DIRS=/usr/local/Cellar/openssl@1.1/1.1.1g/include/ ..
    make

我猜这是因为你正在朝着基于arm的方向发展。你试过基于x86_64的吗?不要浪费时间为Android构建OpenSSL。只用