支持调试本地源码无法编译的so

要调试的三方源码so:libnativelib1.so

源码文件:calculator2.cpp

HarmonyOS
2024-05-28 22:15:51
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
sdp001

本地环境构造

要调试的三方源码so:libnativelib1.so

源码文件:calculator2.cpp

详细步骤

1、调用该so代码

a:通过查看caculator2.cpp得知源码有两个方法getValue1()和add1(),新建demo3,添加头文件apple.h定义这两个方法,在hello.cpp调用方法并添加断点 #include "apple.h" int value_b = getValue1(); value_b += add1(1, 2) + add1(3, 4);

b:引用so 将libnativelib1.so放到demo3\entry\libs\arm64-v8a\下; CMakeList.txt引用so,${CMAKE_CURRENT_SOURCE_DIR}/../../../libs/arm64-v8a/libnativelib1.so c:在entry的build-profile.json5下设置编译选项,"abiFilters" : ["arm64-v8a"]

2、debug启动demo3,触发进入demo3-entry-hello.cpp断点,step into;

     进入汇编

    a. 选择对应C++的源码路径,即calculator2.cpp

    b. 打开新关联的源码路径,并支持断点调试

    c. 当前会话不停止的情况下,该源码仍能调试

    d. 重启调试会话后需要重新关联源码

分享
微博
QQ
微信
回复
2024-05-29 23:28:02
相关问题
本地模拟器不支持断点调试????
1093浏览 • 1回复 待解决
如何调试引用外部so
348浏览 • 1回复 待解决
通过configuration配置调试so
355浏览 • 1回复 待解决
单步调试HSP中CPP源码
385浏览 • 1回复 待解决
如何编译鸿蒙使用libcurl.so
355浏览 • 1回复 待解决
如何编译底层so有懂吗?
1016浏览 • 1回复 待解决
so加固支持混淆逻辑
202浏览 • 1回复 待解决
在Camkelist配置so后,编译报错
267浏览 • 1回复 待解决
编译so时如何去除符号表
1019浏览 • 1回复 待解决
在HAP编译过程中,本地依赖tgz
320浏览 • 1回复 待解决
OpenHarmony dcts无法编译通过
2131浏览 • 0回复 待解决