1

Android でネイティブ コードをコンパイルすると、次のような問題が発生します。

CMakeFiles/test_v_job.dir/test_v_job.cpp.o:test_v_job.cpp:function
boost::detail::signal_handler::~signal_handler(): error: undefined
reference to 'sigaltstack'
CMakeFiles/test_v_job.dir/test_v_job.cpp.o:test_v_job.cpp:function
boost::detail::signal_handler::signal_handler(bool, int, bool, char*):
error: undefined reference to 'sigaltstack'
CMakeFiles/test_v_job.dir/test_v_job.cpp.o:test_v_job.cpp:function
boost::detail::signal_handler::signal_handler(bool, int, bool, char*):
error: undefined reference to 'sigaltstack' collect2: ld returned 1
exit status

signal.hヘッダー ファイルは次のディレクトリにあります: C:\AndroidSDKS\android-ndk-r7-crystax\platforms\android-9\arch-arm\usr\include

何をリンクする必要がありますか?

4

2 に答える 2

0

ANDROID NDK でブーストを構築するには、github.com/MysticTreeGames/Boost-for-Android – e.proydakov を使用します。

于 2015-03-06T11:00:04.420 に答える
0

このエラーは、おそらく android-ndk の古いプラットフォームが原因で発生します。少なくとも android-9 以降でコンパイルする必要があります。

ブーストライブラリとは関係ありません

たとえば、ndk-build を使用する場合は、Application.mk に次の行を追加する必要があります。

APP_ABI := アルメアビ APP_PLATFORM := Android-9

于 2013-09-27T12:14:14.660 に答える