vs2012生成动态库的时候,为什么不能生成lib文件

vs2012生成动态库的时候,为什么不能生成lib文件,第1张

原因可能有三个:

1)在Settings->Link中的General选项页中,选中了“Doesn't produce.LIB”复选框。

2)整个动态链接库中没有导出的函数或类。

3)所有导出函数的实现均写在在头文件中。

自己检测一下。 如果实在找不到原因,可以参考如下两种方法

1、使用LoadLibrary加载DLL文件,通过GetProcAddress()来获取函数来执行。为了方便,还可以把这两个函数写成一个类。。方便写源码。

2、使用vc工具自己 手动生成

1、在命令行执行: dumpbin /exports yourdll.dll > yourdll.def

2、编辑 yourdll.def 文件,使之格式与.def文件格式一致。比如:

EXPORTS fn1 fn2

3、在命令行执行:

lib /def:yourdll.def /machine:i386 /out:yourdll.lib

vtkpng-6.1.lib

vtktiff-6.1.lib

ws2_32.lib

Psapi.lib

glu32.lib

opengl32.lib

4、链接器--->输入--->命令行

/OUT:"F:\VTK\DevCode\Step1-VS2012\Cxx\Debug\Cone.exe" /MANIFEST /NXCOMPAT /PDB:"F:/VTK61/VTK-6.1.0/SLN/bin/Debug/Cone.pdb" /DYNAMICBASE "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "comdlg32.lib" "advapi32.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkFiltersSources-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkCommonComputationalGeometry-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkCommonDataModel-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkCommonMath-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkCommonCore-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtksys-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkCommonMisc-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkCommonSystem-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkCommonTransforms-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkFiltersGeneral-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkFiltersCore-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkCommonExecutionModel-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkInteractionStyle-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkFiltersExtraction-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkFiltersStatistics-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkImagingFourier-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkImagingCore-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkalglib-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkRenderingCore-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkFiltersGeometry-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkRenderingOpenGL-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkImagingHybrid-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkIOImage-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkDICOMParser-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkIOCore-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkzlib-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkmetaio-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkjpeg-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtkpng-6.1.lib" "F:\VTK61\VTK-6.1.0\SLN\lib\Debug\vtktiff-6.1.lib" "ws2_32.lib" "Psapi.lib" "glu32.lib" "opengl32.lib" /IMPLIB:"F:/VTK61/VTK-6.1.0/SLN/lib/Debug/Cone.lib" /DEBUG /MACHINE:X86 /SAFESEH /INCREMENTAL /PGD:"F:\VTK\DevCode\Step1-VS2012\Cxx\Debug\Cone.pgd" /SUBSYSTEM:CONSOLE /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"Cone.di


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11799580.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存