找回密码
 注册帐号

扫一扫,访问微社区

关于linux下的C++插件

1
回复
379
查看
[ 复制链接 ]
7日久生情
2940/5000
排名
405
昨日变化

10

主题

224

帖子

2940

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
62462
好友
9
蛮牛币
5780
威望
0
注册时间
2014-12-20
在线时间
1048 小时
最后登录
2019-5-24
2018-10-9 15:21:53 显示全部楼层 阅读模式
20蛮牛币
Linux下制作unity用的C++插件



按照
#include <stdio.h>extern "C" int sum(int a, int b){    return a + b;}

然后在该文件的当前路径下打开终端,执行如下命令:gcc -c -o libtest.o libtest.cpp
gcc -shared -o libtest.so libtest.o



[DllImport ("libtest.so", EntryPoint="sum")]static extern int sum(int a, int b);

然后将libtest.so动态库放到根目录和Plugins的x86_64的目录下

结果在editor和build and run模式下 可以顺利加载动态链接库so,并得到预想中的结果。
但是单独run这个打包后的程序,就是死活加载不了动态链接库so,算不出结果。
请问还漏掉什么步骤吗??



回复

使用道具 举报

4四处流浪
429/500
排名
5820
昨日变化

0

主题

87

帖子

429

积分

Rank: 4

UID
43521
好友
0
蛮牛币
213
威望
0
注册时间
2014-9-3
在线时间
92 小时
最后登录
2019-5-27
2018-10-9 15:21:54 显示全部楼层
不需要列出 EntryPoint 吧,你把EntryPoint 和 .so 去掉试试,"lib" 也不用加的,像这样:

[C#] 纯文本查看 复制代码
[DllImport ("test")]
static extern int sum(int a, int b);
参与人数 1鲜花 +5 收起 理由
yumianhuli2 + 5 很给力!

查看全部评分总评分 : 鲜花 +5

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则