最近,我在Android中从ndk转向了cmake系统(我使用的是3.2.1版本),而且由于我的C++代码中有一些第三方库的依赖项,所以我决定切换到conan C++包管理器来简化我的交叉构建。为了正确地做到这一点,我决定在小例子中尝试这一点,以确保一切都能像预期的那样正常工作。
我遵循Android演播室集成页面的说明,一切都很好,但是我无法从android调试本机代码。我在C++代码中的断点被忽略。
当我将所有代码依赖项移除到libpng库和CMakeLists.txt中时,
conan_basic_setup(TARGETS)第一行再次调试了C++代码。
我试着挖掘"conan_basic_setup“的cmake宏,但是我在里面迷路了。我甚至尝试通过更改来创建用于交叉编译的调试conan配置文件。
build_type=Release转到
build_type=Debug在配置文件中,但没有结果。
有人有正确的调试设置的收据吗?
发布于 2018-12-11 08:15:02
最后,我通过将参数NO_OUTPUT_DIRS添加到conan_basic_setup宏来解决这个问题。
所以而不是
conan_basic_setup(TARGETS)它应该是
conan_basic_setup(TARGETS NO_OUTPUT_DIRS)显然,如果没有这个参数,conan就会更改bin/ and lib/ output路径,并破坏android的设置。现在我可以调试代码了。
https://stackoverflow.com/questions/53671347
复制相似问题