OpenHarmony开发者论坛
标题:
在nativec++应用里dlopen一个so的问题
[打印本页]
作者:
深开鸿_王石
时间:
2024-1-3 18:45
标题:
在nativec++应用里dlopen一个so的问题
[md]Symbol not found: NAPI_default/entry_GetABCCode, version: null
1,创建一个nativcec++应用
2,在c++代码里增加dlopen开so
```
void* handle = dlopen("/data/local/tmp/libsoexample.so", RTLD_LAZY);
if (!handle) {
char* dlerr = dlerror();
printf("%s\n", dlerror());
```
3,打印输出错误信息:
Symbol not found: NAPI_default/entry_GetABCCode
难道napi里调用dlopen也需要对应的so是napi方式编译出来的so吗?
[/md]
作者:
追梦人
时间:
2024-6-18 17:17
大佬,问题解决了吗
作者:
深开鸿_王石
时间:
2024-6-19 17:55
回复
追梦人
: 不能這麽乾,哈哈
作者:
oh-assistant
时间:
2024-6-20 11:21
回复
深开鸿_王石
: OpenHarmony上dlopen不能用吗,请教一下
作者:
xq_qyh
时间:
2024-6-20 11:47
回复
深开鸿_王石
: 那应该怎么在native中调用其他的so呢
作者:
深开鸿_王石
时间:
2024-6-21 14:22
回复
xq_qyh
: 需要再napi层对具体so进行编译,在deveco里用cmake进行编译
作者:
koubo
时间:
2024-6-26 11:04
回复
深开鸿_王石
: 想问下大佬,应用程序能通过dlopen打开so库,但是获取到so库里的内容为null,可能是什么原因,是需要应用程序申请哪些特殊权限吗
作者:
深开鸿_王石
时间:
2024-6-26 15:07
回复
koubo
: nativec++的so是要在native方式編譯的
作者:
koubo
时间:
2024-6-26 15:30
回复
深开鸿_王石
: 那如果是系统源码中某个服务编译出来的so库,应用程序无法用dlopen打开了吗,这种情况该如何调用
作者:
深开鸿_王石
时间:
2024-6-27 09:53
回复
koubo
: 学so的做法就两种:1,写个sa,然后通过proxy和sub调用;2,自己写个服务,udp(有些就这么玩,哈哈,但是野路子)
作者:
深开鸿_王石
时间:
2024-6-27 10:18
回复
koubo
: 还有个官方可行的引用so的文章,你看看,对原生cmake或者make的工程也不费事,
https://forums.openharmony.cn/fo ... tid=3135&extra=
作者:
koubo
时间:
2024-7-1 16:16
回复
深开鸿_王石
: 好的,谢谢大佬
欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/)
Powered by Discuz! X3.5