clang 3.8로 안드로이드 NDK r14b에 대해 1.58을 향상 시키려고합니다. 나는 그것을 gcc와 함께 작동 시키지만 clang에서는 그렇지 않다. 다음 명령을 실행하여Clang (3.8) 및 Android NDK로 건물 부스트 (1.58) r14b
은 (는 program_options lib 디렉토리에 대한 하나의 예입니다) :
"androidNDK/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++"
-c
-x c++
-std=c++11
--stdlib=libc++
-mthumb
-Os
-O2
-g
-Wno-unused-local-typedefs
-O3
-Wno-inline
-Wall
--sysroot=androidNDK/platforms/android-24/arch-arm
-I"androidNDK/sources/cxx-stl/llvm-libc++/include"
-D_GLIBCXX__PTHREADS
-D__arm__
-D_REENTRANT
-D__ANDROID__
-DANDROID
-pthread
-std=c++11
--stdlib=libc++
-mthumb
-fno-strict-aliasing
-DBOOST_ALL_NO_LIB=1
-DBOOST_TEST_NO_MAIN
-DNDEBUG
-D_HAS_EXCEPTIONS=0
-D_LITTLE_ENDIAN
-I"."
-o "bin.v2\libs\program_options\build\clang-linux-android\release\link-static\runtime-link-static\target-os-linux\threadapi-pthread\threading-multi\config_file.o" "libs\program_options\src\config_file.cpp"
하지만 난 signal.h 파일에 약간의 오차가 얻을 :
clang++.exe: warning: argument unused during compilation: '-mthumb'
clang++.exe: warning: argument unused during compilation: '-mthumb'
In file included from libs\program_options\src\config_file.cpp:8:
In file included from .\boost/program_options/config.hpp:10:
In file included from .\boost/config.hpp:57:
In file included from .\boost/config/platform/linux.hpp:74:
In file included from .\boost/config/posix_features.hpp:18:
In file included from androidNDK/platforms/android-24/arch-arm/usr/include\unistd.h:34:
In file included from androidNDK/platforms/android-24/arch-arm/usr/include\sys/select.h:35:
androidNDK/platforms/android-24/arch-arm/usr/include\signal.h:86:18: error: expected ';' at
end of declaration list
sighandler_t sa_handler;
^
androidNDK/platforms/android-24/arch-arm/usr/include\asm/signal.h:101:22: note: expanded
from macro 'sa_handler'
#define sa_handler _u._sa_handler
^
In file included from libs\program_options\src\config_file.cpp:8:
In file included from .\boost/program_options/config.hpp:10:
In file included from .\boost/config.hpp:57:
In file included from .\boost/config/platform/linux.hpp:74:
In file included from .\boost/config/posix_features.hpp:18:
In file included from androidNDK/platforms/android-24/arch-arm/usr/include\unistd.h:34:
In file included from androidNDK/platforms/android-24/arch-arm/usr/include\sys/select.h:35:
androidNDK/platforms/android-24/arch-arm/usr/include\signal.h:87:12: error: expected ')'
void (*sa_sigaction)(int, struct siginfo*, void*);
^
androidNDK/platforms/android-24/arch-arm/usr/include\asm/signal.h:102:24: note: expanded
from macro 'sa_sigaction'
#define sa_sigaction _u._sa_sigaction
^
androidNDK/platforms/android-24/arch-arm/usr/include\signal.h:87:10: note: to match this
'('
void (*sa_sigaction)(int, struct siginfo*, void*);
^
androidNDK/platforms/android-24/arch-arm/usr/include\signal.h:87:12: error: duplicate
member '_u'
void (*sa_sigaction)(int, struct siginfo*, void*);
^
androidNDK/platforms/android-24/arch-arm/usr/include\asm/signal.h:102:22: note: expanded
from macro 'sa_sigaction'
#define sa_sigaction _u._sa_sigaction
^
androidNDK/platforms/android-24/arch-arm/usr/include\signal.h:86:18: note: previous
declaration is here
sighandler_t sa_handler;
^
androidNDK/platforms/android-24/arch-arm/usr/include\asm/signal.h:101:20: note: expanded
from macro 'sa_handler'
#define sa_handler _u._sa_handler
^
3 errors generated.
아무도 누가 있는가 이미 이런 일을했거나 잘못된 것을 볼 수 있습니까?
버그가있는 것 같습니다. 당신은 repro 지침과 함께 하나를 제출할 수 있습니까? https://github.com/android-ndk/ndk/issues –