【发布时间】:2012-08-31 11:55:09
【问题描述】:
在 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\包括
必须链接什么?
【问题讨论】:
-
我已尝试链接 -lboost_signals。它没有解决我的问题。我想我需要链接包含“sigaltstack”的库。在 linux 上是 libc。 android 上的“sigaltstack”在哪里?
-
你确定它是 libboost_signals 的 Android 版本吗? Windows 或 Linux 版本与 Android NDK 不兼容。
-
为了在 ANDROID NDK 下构建提升,我使用 github.com/MysticTreeGames/Boost-for-Android
标签: android c++ linker android-ndk