2013-04-23 39 views
7

Tôi đang cố gắng xây dựng thứ gì đó bằng cách sử dụng chuỗi công cụ độc lập Android NdK. Tuy nhiên, tôi đang gặp phải những lỗi này.cmake không thành công với android ndk

 CMake Warning at cmake/android.toolchain.cmake:387 (message): 
     Using value of obsolete variable ANDROID_NDK_TOOLCHAIN_ROOT as initial 
     value for ANDROID_STANDALONE_TOOLCHAIN. Please note, that 
     ANDROID_NDK_TOOLCHAIN_ROOT can be completely removed in future versions of 
     the toolchain. 
    Call Stack (most recent call first): 
     cmake/android.toolchain.cmake:476 (__INIT_VARIABLE) 
     /usr/local/Cellar/cmake/2.8.10.2/share/cmake/Modules/CMakeDetermineSystem.cmake:86 (include) 
     CMakeLists.txt:16 (PROJECT) 


    CMake Error at cmake/android.toolchain.cmake:412 (FILE): 
     file STRINGS file 
     "/Users/vgokhale/Desktop/android-ndk-r8e/sysroot/usr/include/android/api-level.h" 
     cannot be read. 
    Call Stack (most recent call first): 
     cmake/android.toolchain.cmake:548 (__DETECT_NATIVE_API_LEVEL) 
     /usr/local/Cellar/cmake/2.8.10.2/share/cmake/Modules/CMakeDetermineSystem.cmake:86 (include) 
     CMakeLists.txt:16 (PROJECT) 

CMake Error: Error required internal CMake variable not set, cmake may be not be built correctly. 
Missing variable is: 
CMAKE_C_COMPILER_ENV_VAR 
CMake Error: Error required internal CMake variable not set, cmake may be not be built correctly. 
Missing variable is: 
CMAKE_C_COMPILER 
CMake Error: Could not find cmake module file:/Users/vgokhale/Desktop/torch-android/src/build/CMakeFiles/2.8.10.2/CMakeCCompiler.cmake 
CMake Error: Error required internal CMake variable not set, cmake may be not be built correctly. 
Missing variable is: 
CMAKE_CXX_COMPILER_ENV_VAR 
CMake Error: Error required internal CMake variable not set, cmake may be not be built correctly. 
Missing variable is: 
CMAKE_CXX_COMPILER 
CMake Error: Could not find cmake module file:/Users/vgokhale/Desktop/torch-android/src/build/CMakeFiles/2.8.10.2/CMakeCXXCompiler.cmake 
CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage 
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage 
-- Configuring incomplete, errors occurred! 
make: *** No rule to make target `install'. Stop. 

Có hai bộ lỗi. Tôi không biết bắt đầu từ đâu với tập đầu tiên. Tệp android.toolchain.cmake nhìn vào sysroot theo mặc định nhưng android không được cài đặt ở đó Google cũng không yêu cầu tôi cài đặt nó ở đó.

Về biến CMAKE, tôi thấy rằng hầu hết các giải pháp đều liên quan đến việc cài đặt Công cụ nhà phát triển mà tôi đã có. Tôi đã thử đặt các biến CXX và CC theo cách thủ công nhưng điều đó không giúp ích gì.

Bất kỳ ý tưởng nào về nơi bắt đầu?

Cảm ơn bạn.

Trả lời

4

Ok, tôi sẽ làm một chút phỏng đoán ở đây, nhưng tôi nghĩ bạn đang sử dụng http://code.google.com/p/android-cmake/ và bạn đang gọi nó bằng ANDROID_STANDALONE_TOOLCHAIN ​​trong khi cung cấp đường dẫn đến NDK của bạn. Nếu tôi đúng, đó là vấn đề.

Bạn nên gọi bằng ANDROID_NDK và cung cấp đường dẫn đến NDK của bạn. Tài liệu hướng dẫn cho android-cmake cho thấy đây là con đường để đi.

hay

tiếp tục gọi nó với ANDROID_STANDALONE_TOOLCHAIN, nhưng cung cấp cho nó đường dẫn đến một toochain cài đặt (một cái gì đó tạo ra với make-standalone-toolchain.sh)

Nếu bạn muốn đi theo con đường này, bạn có thể tìm thông tin về việc tạo các móc công cụ độc lập trong tài liệu/STANDALONE-TOOLCHAIN.html trong NDK đã cài đặt của bạn.

+0

Tôi nên trỏ ANDROID_STANDALONE_TOOLCHAIN ​​ở đâu? Tôi đặt "C: \ cygwin64 \ bin" nhưng không hoạt động. Tôi vẫn gặp sự cố: https://github.com/realm/realm-java/issues/4070#issuecomment-274723770 –

Các vấn đề liên quan