开发环境 -- Linux下查看动态库中是否包含某个函数

一个例子,记录一下,以后会用到

strings libdrv.so | grep BrdReInitAllGMPU

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Linux 下使用 Qt 调用 C# 动态,需要使用 Mono 框架,因为 Mono 提供了 .NET Framework 的实现,可以在 Linux 下运行 .NET 程序,包括 C# 程序。 以下是使用 Qt 调用 C# 动态的基本步骤: 1. 安装 Mono 开发环境。可以使用包管理器安装,例如在 Ubuntu 上执行以下命令: ``` sudo apt-get install mono-devel ``` 2. 编写 C# 动态。可以使用 Visual Studio 进行开发,也可以使用 MonoDevelop 等工具。编写完毕后,需要将 C# 动态编译为 .dll 文件。 3. 在 Qt 项目添加对 Mono 的引用。在 Qt 项目的 .pro 文件添加以下内容: ``` LIBS += -r:System ``` 4. 在 Qt 项目调用 C# 动态。可以使用 QProcess 或者 QLibrary 类来调用 C# 动态。 - 使用 QProcess: ```cpp QProcess process; process.start("mono", QStringList() << "CSharpLibrary.dll" << "arg1" << "arg2"); process.waitForFinished(); QByteArray output = process.readAllStandardOutput(); ``` 这里的 "CSharpLibrary.dll" 是 C# 动态的文件名,"arg1" 和 "arg2" 是传递给 C# 动态的参数。 - 使用 QLibrary: ```cpp QLibrary library("CSharpLibrary.dll"); library.load(); typedef int (*FuncType)(int, int); // 定义 C# 动态函数类型 FuncType func = (FuncType)library.resolve("Add"); // 获取 C# 动态函数地址 int result = func(1, 2); // 调用 C# 动态函数 ``` 这里的 "Add" 是 C# 动态函数名,可以根据需要修改。 注意事项: - C# 动态必须是 .NET Framework 2.0 或者更高版本编译的。 - C# 动态函数必须使用“C”调用约定,例如可以使用 [DllImport] 标记来指定调用约定。 - C# 动态函数参数类型和返回值类型必须与 Qt 使用的类型相兼容。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Evan_ZGYF丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值