添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
潇洒的小虾米  ·  (RESOLVED) error ...·  6 天前    · 
乖乖的树叶  ·  C++ ...·  4 月前    · 
寂寞的火腿肠  ·  鄂州海关正式揭牌 ...·  6 月前    · 

I want to build couchbase lite core android on my unbuntu machine. However, after I run ./build_android, the following error occurs. How should I solve it?

~/dev-JiajieHuang/couchbase-lite-core/build_cmake ~/dev-JiajieHuang/couchbase-lite-core/build_cmake/scripts
~/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/x86 ~/dev-JiajieHuang/couchbase-lite-core/build_cmake ~/dev-JiajieHuang/couchbase-lite-core/build_cmake/scripts
-- Android: Targeting API '16' with architecture 'x86', ABI 'x86', and processor 'i686'
-- Android: Selected Clang toolchain 'x86-clang' with GCC toolchain ''
-- The C compiler identification is Clang 8.0.2
-- The CXX compiler identification is Clang 8.0.2
-- Check for working C compiler: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang
-- Check for working C compiler: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang -- broken
CMake Error at /usr/share/cmake-3.10/Modules/CMakeTestCCompiler.cmake:52 (message):
  The C compiler
    "/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang"
  is not able to compile a simple test program.
  It fails with the following output:
    Change Dir: /home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/x86/CMakeFiles/CMakeTmp
    Run Build Command:"/usr/bin/make" "cmTC_2261f/fast"
    /usr/bin/make -f CMakeFiles/cmTC_2261f.dir/build.make CMakeFiles/cmTC_2261f.dir/build
    make[1]: Entering directory '/home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/x86/CMakeFiles/CMakeTmp'
    Building C object CMakeFiles/cmTC_2261f.dir/testCCompiler.c.o
    /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang --target=i686-none-linux-android --gcc-toolchain=/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains//prebuilt/linux-x86_64 --sysroot=/home/jiajiehuang/Android/Sdk/ndk-bundle/sysroot  -isystem /home/jiajiehuang/Android/Sdk/ndk-bundle/sysroot/usr/include -isystem /home/jiajiehuang/Android/Sdk/ndk-bundle/sysroot/usr/include/i686-linux-android  -funwind-tables -no-canonical-prefixes -D__ANDROID_API__=16 -fexceptions  -g -fPIE   -o CMakeFiles/cmTC_2261f.dir/testCCompiler.c.o   -c /home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/x86/CMakeFiles/CMakeTmp/testCCompiler.c
    Linking C executable cmTC_2261f
    /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_2261f.dir/link.txt --verbose=1
    /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang --target=i686-none-linux-android --gcc-toolchain=/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains//prebuilt/linux-x86_64 --sysroot=/home/jiajiehuang/Android/Sdk/ndk-bundle/platforms/android-16/arch-x86 -funwind-tables -no-canonical-prefixes -D__ANDROID_API__=16 -fexceptions  -g  -fPIE -pie -Wl,--gc-sections -Wl,-z,nocopyreloc  CMakeFiles/cmTC_2261f.dir/testCCompiler.c.o  -o cmTC_2261f 
    /usr/bin/ld: cannot find -lgcc
    /usr/bin/ld: cannot find -lgcc
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    CMakeFiles/cmTC_2261f.dir/build.make:97: recipe for target 'cmTC_2261f' failed
    make[1]: *** [cmTC_2261f] Error 1
    make[1]: Leaving directory '/home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/x86/CMakeFiles/CMakeTmp'
    Makefile:126: recipe for target 'cmTC_2261f/fast' failed
    make: *** [cmTC_2261f/fast] Error 2
  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:47 (project)
-- Configuring incomplete, errors occurred!
See also "/home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/x86/CMakeFiles/CMakeOutput.log".
See also "/home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/x86/CMakeFiles/CMakeError.log".
make: *** No rule to make target 'LiteCore'.  Stop.
~/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/x86 ~/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/x86
Usage: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/x86-4.9/prebuilt/linux-x86_64/i686-linux-android/bin/strip <option(s)> in-file(s)
 Removes symbols and sections from files
 The options are:
  -I --input-target=<bfdname>      Assume input file is in format <bfdname>
  -O --output-target=<bfdname>     Create an output file in format <bfdname>
  -F --target=<bfdname>            Set both input and output format to <bfdname>
  -p --preserve-dates              Copy modified/access timestamps to the output
  -D --enable-deterministic-archives
                                   Produce deterministic output when stripping archives
  -U --disable-deterministic-archives
                                   Disable -D behavior (default)
  -R --remove-section=<name>       Also remove section <name> from the output
  -s --strip-all                   Remove all symbol and relocation information
  -g -S -d --strip-debug           Remove all debugging symbols & sections
     --strip-dwo                   Remove all DWO sections
     --strip-unneeded              Remove all symbols not needed by relocations
     --only-keep-debug             Strip everything but the debug information
  -N --strip-symbol=<name>         Do not copy symbol <name>
  -K --keep-symbol=<name>          Do not strip symbol <name>
     --keep-file-symbols           Do not strip file symbol(s)
  -w --wildcard                    Permit wildcard in symbol comparison
  -x --discard-all                 Remove all non-global symbols
  -X --discard-locals              Remove any compiler-generated symbols
  -v --verbose                     List all object files modified
  -V --version                     Display this program's version number
  -h --help                        Display this output
     --info                        List object formats & architectures supported
  -o <file>                        Place stripped output into <file>
/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/x86-4.9/prebuilt/linux-x86_64/i686-linux-android/bin/strip: supported targets: elf32-i386 elf32-iamcu a.out-i386-linux pei-i386 elf64-x86-64 elf32-x86-64 pei-x86-64 elf64-l1om elf64-k1om elf64-little elf64-big elf32-little elf32-big plugin srec symbolsrec verilog tekhex binary ihex
rm: cannot remove 'libLiteCore.so': No such file or directory
make: *** No rule to make target 'LiteCore'.  Stop.
/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/x86-4.9/prebuilt/linux-x86_64/i686-linux-android/bin/objcopy: 'libLiteCore.so': No such file
/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/x86-4.9/prebuilt/linux-x86_64/i686-linux-android/bin/strip: 'libLiteCore.so': No such file
/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/x86-4.9/prebuilt/linux-x86_64/i686-linux-android/bin/objcopy: 'libLiteCore.so': No such file
~/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/x86
~/dev-JiajieHuang/couchbase-lite-core/build_cmake ~/dev-JiajieHuang/couchbase-lite-core/build_cmake/scripts
~/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/armeabi-v7a ~/dev-JiajieHuang/couchbase-lite-core/build_cmake ~/dev-JiajieHuang/couchbase-lite-core/build_cmake/scripts
-- Android: Targeting API '16' with architecture 'arm', ABI 'armeabi-v7a', and processor 'armv7-a'
-- Android: Selected Clang toolchain 'arm-linux-androideabi-clang' with GCC toolchain ''
-- The C compiler identification is Clang 8.0.2
-- The CXX compiler identification is Clang 8.0.2
-- Check for working C compiler: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang
-- Check for working C compiler: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang -- broken
CMake Error at /usr/share/cmake-3.10/Modules/CMakeTestCCompiler.cmake:52 (message):
  The C compiler
    "/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang"
  is not able to compile a simple test program.
  It fails with the following output:
    Change Dir: /home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/armeabi-v7a/CMakeFiles/CMakeTmp
    Run Build Command:"/usr/bin/make" "cmTC_aed92/fast"
    /usr/bin/make -f CMakeFiles/cmTC_aed92.dir/build.make CMakeFiles/cmTC_aed92.dir/build
    make[1]: Entering directory '/home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/armeabi-v7a/CMakeFiles/CMakeTmp'
    Building C object CMakeFiles/cmTC_aed92.dir/testCCompiler.c.o
    /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang --target=armv7-none-linux-androideabi --gcc-toolchain=/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains//prebuilt/linux-x86_64 --sysroot=/home/jiajiehuang/Android/Sdk/ndk-bundle/sysroot  -isystem /home/jiajiehuang/Android/Sdk/ndk-bundle/sysroot/usr/include -isystem /home/jiajiehuang/Android/Sdk/ndk-bundle/sysroot/usr/include/arm-linux-androideabi  -march=armv7-a -mthumb -mfpu=vfpv3-d16 -mfloat-abi=softfp -funwind-tables -no-canonical-prefixes -D__ANDROID_API__=16 -fexceptions  -g -fPIE   -o CMakeFiles/cmTC_aed92.dir/testCCompiler.c.o   -c /home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/armeabi-v7a/CMakeFiles/CMakeTmp/testCCompiler.c
    Linking C executable cmTC_aed92
    /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_aed92.dir/link.txt --verbose=1
    /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang --target=armv7-none-linux-androideabi --gcc-toolchain=/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains//prebuilt/linux-x86_64 --sysroot=/home/jiajiehuang/Android/Sdk/ndk-bundle/platforms/android-16/arch-arm -march=armv7-a -mthumb -mfpu=vfpv3-d16 -mfloat-abi=softfp -funwind-tables -no-canonical-prefixes -D__ANDROID_API__=16 -fexceptions  -g  -Wl,--fix-cortex-a8  -fPIE -pie -Wl,--gc-sections -Wl,-z,nocopyreloc  CMakeFiles/cmTC_aed92.dir/testCCompiler.c.o  -o cmTC_aed92 
    /usr/bin/ld: unrecognised emulation mode: armelf_linux_eabi
    Supported emulations: elf_x86_64 elf32_x86_64 elf_i386 elf_iamcu i386linux elf_l1om elf_k1om i386pep i386pe
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    CMakeFiles/cmTC_aed92.dir/build.make:97: recipe for target 'cmTC_aed92' failed
    make[1]: *** [cmTC_aed92] Error 1
    make[1]: Leaving directory '/home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/armeabi-v7a/CMakeFiles/CMakeTmp'
    Makefile:126: recipe for target 'cmTC_aed92/fast' failed
    make: *** [cmTC_aed92/fast] Error 2
  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:47 (project)
-- Configuring incomplete, errors occurred!
See also "/home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/armeabi-v7a/CMakeFiles/CMakeOutput.log".
See also "/home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/armeabi-v7a/CMakeFiles/CMakeError.log".
make: *** No rule to make target 'LiteCore'.  Stop.
~/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/armeabi-v7a ~/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/armeabi-v7a
xargs: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/arm-linux-androideabi/binstrip: No such file or directory
rm: cannot remove 'libLiteCore.so': No such file or directory
make: *** No rule to make target 'LiteCore'.  Stop.
./strip.sh: line 16: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/arm-linux-androideabi/binobjcopy: No such file or directory
./strip.sh: line 18: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/arm-linux-androideabi/binstrip: No such file or directory
./strip.sh: line 20: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/arm-linux-androideabi/binobjcopy: No such file or directory
~/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/armeabi-v7a
~/dev-JiajieHuang/couchbase-lite-core/build_cmake ~/dev-JiajieHuang/couchbase-lite-core/build_cmake/scripts
~/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/arm64-v8a ~/dev-JiajieHuang/couchbase-lite-core/build_cmake ~/dev-JiajieHuang/couchbase-lite-core/build_cmake/scripts
-- Android: Targeting API '21' with architecture 'arm64', ABI 'arm64-v8a', and processor 'aarch64'
-- Android: Selected Clang toolchain 'aarch64-linux-android-clang' with GCC toolchain ''
-- The C compiler identification is Clang 8.0.2
-- The CXX compiler identification is Clang 8.0.2
-- Check for working C compiler: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang
-- Check for working C compiler: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang -- broken
CMake Error at /usr/share/cmake-3.10/Modules/CMakeTestCCompiler.cmake:52 (message):
  The C compiler
    "/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang"
  is not able to compile a simple test program.
  It fails with the following output:
    Change Dir: /home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/arm64-v8a/CMakeFiles/CMakeTmp
    Run Build Command:"/usr/bin/make" "cmTC_fd1a5/fast"
    /usr/bin/make -f CMakeFiles/cmTC_fd1a5.dir/build.make CMakeFiles/cmTC_fd1a5.dir/build
    make[1]: Entering directory '/home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/arm64-v8a/CMakeFiles/CMakeTmp'
    Building C object CMakeFiles/cmTC_fd1a5.dir/testCCompiler.c.o
    /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang --target=aarch64-none-linux-android --gcc-toolchain=/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains//prebuilt/linux-x86_64 --sysroot=/home/jiajiehuang/Android/Sdk/ndk-bundle/sysroot  -isystem /home/jiajiehuang/Android/Sdk/ndk-bundle/sysroot/usr/include -isystem /home/jiajiehuang/Android/Sdk/ndk-bundle/sysroot/usr/include/aarch64-linux-android  -funwind-tables -no-canonical-prefixes -D__ANDROID_API__=21 -fexceptions  -g -fPIE   -o CMakeFiles/cmTC_fd1a5.dir/testCCompiler.c.o   -c /home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/arm64-v8a/CMakeFiles/CMakeTmp/testCCompiler.c
    Linking C executable cmTC_fd1a5
    /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_fd1a5.dir/link.txt --verbose=1
    /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang --target=aarch64-none-linux-android --gcc-toolchain=/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains//prebuilt/linux-x86_64 --sysroot=/home/jiajiehuang/Android/Sdk/ndk-bundle/platforms/android-21/arch-arm64 -funwind-tables -no-canonical-prefixes -D__ANDROID_API__=21 -fexceptions  -g  -fPIE -pie -Wl,--gc-sections  CMakeFiles/cmTC_fd1a5.dir/testCCompiler.c.o  -o cmTC_fd1a5 
    /usr/bin/ld: unrecognised emulation mode: aarch64linux
    Supported emulations: elf_x86_64 elf32_x86_64 elf_i386 elf_iamcu i386linux elf_l1om elf_k1om i386pep i386pe
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    CMakeFiles/cmTC_fd1a5.dir/build.make:97: recipe for target 'cmTC_fd1a5' failed
    make[1]: *** [cmTC_fd1a5] Error 1
    make[1]: Leaving directory '/home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/arm64-v8a/CMakeFiles/CMakeTmp'
    Makefile:126: recipe for target 'cmTC_fd1a5/fast' failed
    make: *** [cmTC_fd1a5/fast] Error 2
  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:47 (project)
-- Configuring incomplete, errors occurred!
See also "/home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/arm64-v8a/CMakeFiles/CMakeOutput.log".
See also "/home/jiajiehuang/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/arm64-v8a/CMakeFiles/CMakeError.log".
make: *** No rule to make target 'LiteCore'.  Stop.
~/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/arm64-v8a ~/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/arm64-v8a
xargs: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/aarch64-linux-android/binstrip: No such file or directory
rm: cannot remove 'libLiteCore.so': No such file or directory
make: *** No rule to make target 'LiteCore'.  Stop.
./strip.sh: line 16: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/aarch64-linux-android/binobjcopy: No such file or directory
./strip.sh: line 18: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/aarch64-linux-android/binstrip: No such file or directory
./strip.sh: line 20: /home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/aarch64-linux-android/binobjcopy: No such file or directory
~/dev-JiajieHuang/couchbase-lite-core/build_cmake/android/lib/arm64-v8a
~/dev-JiajieHuang/couchbase-lite-core/build_cmake ~/dev-JiajieHuang/couchbase-lite-core/build_cmake/scripts
~/dev-JiajieHuang/couchbase-lite-core/build_cmake/scripts

Your problem is here:

/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang --target=aarch64-none-linux-android --gcc-toolchain=/home/jiajiehuang/Android/Sdk/ndk-bundle/toolchains//prebuilt/linux-x86_64 --sysroot=/home/jiajiehuang/Android/Sdk/ndk-bundle/platforms/android-21/arch-arm64 -funwind-tables -no-canonical-prefixes -D__ANDROID_API__=21 -fexceptions -g -fPIE -pie -Wl,–gc-sections CMakeFiles/cmTC_fd1a5.dir/testCCompiler.c.o -o cmTC_fd1a5
/usr/bin/ld: unrecognised emulation mode: aarch64linux
Supported emulations: elf_x86_64 elf32_x86_64 elf_i386 elf_iamcu i386linux elf_l1om elf_k1om i386pep i386pe

Perhaps you mistyped the name of your architecture, somewhere?