[英]Linking error using Visual Studio to build JNI dll
我是一名Java程序员,请原谅我对C ++世界的了解。 我正在尝试为我的项目中的JNI东西构建一个DLL。 该DLL引用了两个其他.dll
和.lib
文件均可用的dll。
我进行了搜索,似乎需要在“其他库目录”中包含.lib文件; 另外,我.lib
文件夹( .lib
和.dll
文件都包含在文件夹中)添加到项目属性中VC ++目录下的“库目录”中。 但是当我构建项目时,我仍然从链接器收到警告,说找不到函数实现。
DLL提供程序中包含一个示例项目,该示例程序是一个Win32 exe,他们通过仅在项目中包含lib文件而不添加任何目录来成功构建了项目。 所以我尝试做同样的事情,但是还是不行。
我检查了命令行的链接器如下。 请有人帮助我。
/OUT:"F:\Projects\hf\MyProject\x64\Debug\MyProject.dll" /MANIFEST /NXCOMPAT /PDB:"F:\Projects\MyProject\x64\Debug\MyProject.pdb" /DYNAMICBASE "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /IMPLIB:"F:\Projects\MyProject\x64\Debug\MyProject.lib" /DEBUG /DLL /MACHINE:X64 /INCREMENTAL /PGD:"F:\Projects\MyProject\x64\Debug\MyProject.pgd" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"x64\Debug\MyProject.dll.intermediate.manifest" /ERRORREPORT:PROMPT /NOLOGO /LIBPATH:"RelativePathToLibFolder\customLib.lib" /LIBPATH:"RelativePathToLibFolder\customLib.lib" /TLBID:1
对。 仅供参考-我发现了这个问题。 这是因为该dll
是win32 dll,但是我已将构建配置设置为x64。 错误消息可能会更好,Microsoft ...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.