我想知道是否有人知道如何在Microsoft Visual Studio中链接.so动态库(或该主机的.a静态库)。以下步骤对.a或.so。
均无效我正在使用vs-android插件来使用MVS在Android NDK中进行开发,我正在尝试将一个自定义库(编译为.so)添加到项目中。
1 - 我在同一个解决方案中创建了一个动态库(.so)项目和一个示例项目(san-angeles项目)。
2 - 我设置了.so项目,让它称之为“引擎”作为圣安吉利斯的依赖。 engine.so文件生成没有任何问题,并显示在{SolutionFolder?} / Android / Debug文件夹中。
3 - 我添加了engine.so到链接器其他包括san-angeles和{SolutionFolder?} / Android / Debug文件夹(作为完整路径,类似于C:/ projects /.../ Debug )到其他链接器目录。
但是当我编译san-angeles时,我得到了错误:
“arm-linux-androideabi-g ++。exe:engine.so:没有这样的文件或目录”
所以我猜我需要做一些其他事情来为项目添加.so / .a?也许将名称更改为libengine.so或类似的东西?很多默认包括lib前缀,所以我不知道它是否是这些行的东西。
谢谢你的帮助, 海梅
答案 0 :(得分:-2)
好的,所以在我的情况下,这解决了:
1 - 将生成的engine.a命名为libengine.a
2 - 而不是从MVS中将engine.a添加到Preferences / Linker / Additional Dependencies,我添加到Preferences / Linker / Command Line -l“engine”
有了这个,项目终于设法找到了engine.a
希望这有助于其他人。 :)