尝试使用 swig 将C++库与 C# 链接 - 不会让我添加对 C# 项目的 resulging dll 的引用
Trying to link C++ library with C# using swig - will not let me add reference to resulging dll to C# project
我正在尝试为库制作 c# 绑定。 我使用 cmake 从库源代码创建了一个 Visual Studio 2010 解决方案,并且编译得很好。 我使用随附的.i
文件按照此处的说明(https://code.google.com/p/labstreaminglayer/source/browse/LSL/liblsl-Generic/AUTOGENERATE%20HOWTO.txt(使用cygwin创建包装器。 然后,我将生成的 liblsl_warp.cxx 文件添加到同一项目中。 它仍然编译得很好,所以我假设生成的.dll
包含所需的绑定。
我已将该项目添加到我的 c# 应用程序中,并尝试将 c# 项目中的引用添加到生成的 dll(还尝试添加对该项目的引用(。 我得到的唯一错误是A reference to 'lsl' could not be added.
.
我错过了哪些步骤? 我看了几个例子,我基本上是按照相同的方式设置的,但它们的例子要容易得多。
SWIG生成C#和C++源代码。 C# 代码使用 DllImport 从C++端导入函数 - 它不使用类似 .net 的绑定。 因此,C++ DLL 不需要(也不能(注册,因此不能"引用"。 引用适用于已注册的 DLL。
因此,您有一个C++ DLL 和一个 C# exe。 只需确保 exe 可以找到C++ DLL,例如将其放在同一个文件夹中。 不要担心引用它。
相关文章:
- QT通过C++添加映射QML项目
- Visual Studio 中的 CMake 项目:如何添加其他包含和库目录?
- 尝试将 boost::stacktrace 添加到 CMake 项目时出现构建错误
- 从文本文件在组合框中添加项目
- 如何在视觉c ++项目中添加箭头键作为修饰键Microsoft
- 如何将 Lua 添加到C++项目
- 将项目添加到队列时运行线程
- Qt - 为什么Visual Studio 2019在qml资源中添加10Mb文件后无法再编译我的项目?
- 添加项目后C find()函数不起作用
- 如何在向列表中添加项目的同时迭代列表
- 如何在Qt中添加项目时保持在同一滚动位置
- 使用 push_back() 在向量中添加项目,向量的大小会增加但无法从向量中读取值
- 从键盘向列表中添加项目
- C++添加项目
- Qt QGraphicsScene缓慢添加项目
- 如何通过鼠标单击在QGraphicsView中选择位置并添加项目
- 智能感知和代码建议在添加c++项目后无法在Visual Studio 2013中工作
- 添加项目到CTreectrl c++
- Qt QTreeWidget逐个添加项目
- 在c++ Builder XE8中显示/添加项目到某些组合框