我的应用程序没有看到库的源代码:
我将库构建为DEBUG,然后将头文件+ .a文件打包到SDK目录中。所以我想我也需要将调试文件复制到SDK目录中,或者告诉我的应用程序在哪里查看。我不知道该怎么做。
为了澄清,我的应用程序项目没有维护对库项目的引用,只保留对.a文件和头文件的引用。这是因为库项目是由CMake创建的,我不想修改它。
答案 0 :(得分:8)
首先,您应该检查静态库的.debug_str部分,以验证它是否包含相应的调试信息。
尝试在终端上运行此命令:
xcrun dwarfdump /path/to/library.a | grep "\.m"
您应该看到打印出一堆源(.m)文件路径。从理论上讲,当你停在调试器中时,这就是Xcode的样子,所以要确保这里的路径是正确的。如果您没有看到任何路径,则需要在构建库时将适当的调试标志(例如-g
)传递给编译器。
如果路径在某种程度上不正确,或者您想将它们指向其他位置,您可以将它们作为CMake中构建过程的一部分进行修改,例如使它们相对于您的项目目录。尝试查看“Make gcc put relative filenames in debug information”,它使用CMake调整这些调试路径。