mars icon indicating copy to clipboard operation
mars copied to clipboard

android 本地编译报错

Open NeverMore64 opened this issue 2 years ago • 6 comments

D:\WorkSpace\MarsDemo\mars>python build_android.py Enter menu:

  1. Clean && build mars.
  2. Build incrementally mars.
  3. Clean && build xlog.
  4. Exit 2 ndk path:D:\WorkSpace\NDK-R20-NEW\android-ndk-r20 [[==BUILD_DESCRIPTION==]]Revision: 6a66c82f                   
    PublicComponent
    KEYVALUE
    Branchmaster
    BuildTag
    BuildTime2021-09-28 14:18:15
    Revision6a66c82f
    build cmd:cmake "D:\WorkSpace\MarsDemo\mars" -G "Unix Makefiles" -DANDROID_ABI="arm64-v8a" -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=D:\WorkSpace\NDK-R20-NEW\android-ndk-r20/build/cmake/android.toolchain.cmake -DANDROID_TOOLCHAIN=clang -DANDROID_NDK=D:\WorkSpace\NDK-R20-NEW\android-ndk-r20 -DANDROID_PLATFORM=android-21 -DANDROID_STL="c++_shared" && cmake --build . --config Release -- -j8 -- CMAKE_INSTALL_PREFIX=D:/WorkSpace/MarsDemo/mars/cmake_build/Android -- CMAKE_INSTALL_PREFIX=D:/WorkSpace/MarsDemo/mars/cmake_build/Android -- ==============config comm==================== -- CMAKE_INSTALL_PREFIX=D:/WorkSpace/MarsDemo/mars/cmake_build/Android -- ==============config mars-boost==================== -- CMAKE_INSTALL_PREFIX=D:/WorkSpace/MarsDemo/mars/cmake_build/Android -- ==============config app==================== -- CMAKE_INSTALL_PREFIX=D:/WorkSpace/MarsDemo/mars/cmake_build/Android -- ==============config baseevent==================== -- CMAKE_INSTALL_PREFIX=D:/WorkSpace/MarsDemo/mars/cmake_build/Android -- ==============config xlog==================== -- CMAKE_INSTALL_PREFIX=D:/WorkSpace/MarsDemo/mars/cmake_build/Android -- ==============config sdt==================== -- CMAKE_INSTALL_PREFIX=D:/WorkSpace/MarsDemo/mars/cmake_build/Android -- ==============config stn==================== -- ==============config mars==================== -- Configuring done -- Generating done -- Build files have been written to: D:/WorkSpace/MarsDemo/mars/cmake_build/Android Scanning dependencies of target xlog [ 1%] Building CXX object xlog/CMakeFiles/xlog.dir/src/appender.cc.o [ 17%] Built target libzstd_static [ 32%] Built target mars-boost [ 62%] Built target comm [ 62%] Creating pkg-config file [ 78%] Built target stn [ 80%] Built target baseevent [ 88%] Built target sdt [ 90%] Built target app [ 90%] Built target libzstd.pc [ 91%] Linking CXX static library libxlog.a [ 96%] Built target xlog [ 97%] Linking CXX shared library libmarsxlog.so [ 98%] Built target marsxlog [ 98%] Linking CXX shared library libmarsstn.so D:/WorkSpace/NDK-R20-NEW/android-ndk-r20/toolchains/llvm/prebuilt/windows-x86_64/lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot find -lzstd clang++: error: linker command failed with exit code 1 (use -v to see invocation) make[2]: *** [CMakeFiles/marsstn.dir/build.make:163: libmarsstn.so] Error 1 make[1]: *** [CMakeFiles/Makefile2:305: CMakeFiles/marsstn.dir/all] Error 2 make: *** [Makefile:149: all] Error 2 !!!!!!!!!!!!!!!!!!build fail!!!!!!!!!!!!!!!!!!!!

NeverMore64 avatar Sep 28 '21 06:09 NeverMore64

master分支拉的代码执行的脚本 看了issues 有的说需要拉v1.3.0tag的分支 但是拉了1.3.0,执行脚本又提示ndk需要r16b版本的,但是文档又说需要r20b版本。人傻了。Issues看完了 也没有相同错误的 求解

NeverMore64 avatar Oct 07 '21 08:10 NeverMore64

ndk-r20b 可以,target_link_libraries zstd 改成libzstd_static ,有两处,但是不一致

landuochong avatar Oct 09 '21 11:10 landuochong

ndk-r20b 可以,target_link_libraries zstd 改成libzstd_static ,有两处,但是不一致

现在换成了v1.3.0分支的 ndk r16b版本的是可以的

NeverMore64 avatar Oct 12 '21 08:10 NeverMore64

arm-linux-androideabi/bin/ld: error: cannot find -lzstd 遇到了同样的问题,是没有人维护了吗

yanghongge avatar Jun 03 '22 00:06 yanghongge

master ec951c9238aaf9b87a418a3928843c5c6f32878b mars/CMakeLists.txt line:90 zstd 改为libzstd_static 编译通过

yanghongge avatar Jun 03 '22 00:06 yanghongge

master ec951c9 mars/CMakeLists.txt line:90 zstd 改为libzstd_static 编译通过

正解,能解决一部分问题, 仍存在问题: mars/stn/src/special_ini.h:42: error: undefined reference to 'MD5'

gao746700783 avatar Jul 28 '22 03:07 gao746700783