# 在个别C++动态库中无法下断点单步调试

#### 问题现象

在个别C++ so库中断点无效，编译配置Debug、not stripped。

代码里面强制插入\_\_builtin\_trap()；或者asm volatile ("brk #0")；可以生效，但是单步运行就会失效。

#### 解决方案

该动态so库是在linux虚拟机上编译的，项目运行在windows电脑上，毕昇和HarmonyOS SDK工具链编译行为不一致，路径有差异，导致毕昇的cef映射正确，HarmonyOS工具链编译的so映射错误，需要在IDE上配置LLDB Startup Commands路径映射。

1.  要确认.so文件中的源代码路径，即编译so库的机器的路径：/target/path/src。
2.  在IDE上的对应路径：/host/path/src。
    
    ```
    settings set target.source-map /target/path/src /host/path/src
    ```