0

我最近在 Android Studio 中从 ndk-build 切换到 cmake 构建系统(我使用的是 3.2.1 版),并且由于我的 C++ 代码依赖于一些第三方库,所以我决定切换到 conan C++包管理器来简化我的交叉构建。为了正确地做到这一点,我决定在一个小例子中尝试这个,以确保一切都按预期工作。

我按照Android Studio 集成页面的说明进行操作,一切都编译并运行良好,但我无法从 android studio 调试本机代码。我在 C++ 代码中的断点被忽略了。

当我删除 libpng 库和 CMakeLists.txt 中的所有代码依赖项时,注释掉

conan_basic_setup(TARGETS)

行我能够再次调试 C++ 代码。

我试图深入研究“conan_basic_setup”cmake 宏,但我迷路了。我什至尝试通过更改为交叉编译创建调试柯南配置文件

build_type=Release

进入

build_type=Debug

在配置文件中,但没有结果。

有人有正确设置调试的收据吗?

4

1 回答 1

1

最后我设法通过将参数 NO_OUTPUT_DIRS 添加到 conan_basic_setup 宏来解决它。

所以而不是

conan_basic_setup(TARGETS)

它应该是

conan_basic_setup(TARGETS NO_OUTPUT_DIRS)

显然,如果没有这个参数,柯南会改变 bin/ 和 lib/ 输出路径并弄乱 android studio 的设置。现在我可以调试我的代码了。

于 2018-12-11T08:15:02.177 回答