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

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

源码文件:calculator2.cpp

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

本地环境构造

要调试的三方源码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
相关问题
如何调试引用外部so
790浏览 • 1回复 待解决
本地模拟器不支持断点调试????
2561浏览 • 1回复 待解决
通过configuration配置调试so
739浏览 • 1回复 待解决
单步调试HSP中CPP源码
720浏览 • 1回复 待解决
HarmonyOS 使用gn编译Skia编译so
485浏览 • 1回复 待解决
HarmonyOS 如何本地调试Sqlite
682浏览 • 1回复 待解决
如何引用其他工程编译so
359浏览 • 0回复 待解决
如何编译鸿蒙使用libcurl.so
940浏览 • 1回复 待解决
如何减小编译产物so大小
450浏览 • 1回复 待解决
如何编译底层so有懂吗?
2367浏览 • 1回复 待解决
是否有预编译 OpenSSL so 文件?
139浏览 • 1回复 待解决
so加固支持混淆逻辑
601浏览 • 1回复 待解决
C++源码如何编译到HarmonyOS上使用
408浏览 • 1回复 待解决
在Camkelist配置so后,编译报错
717浏览 • 1回复 待解决