从下载的/下载中,它们为x86和x64提供了预编译的Windows二进制文件。所以,下载的是一个.def文件和一个.dll文件。使用这两个文件,您可以创建.lib文件。命令: lib /def:yourfile.def /out:yourfile.lib
在创建.lib文件并将其用作依赖项时,对于x86来说一切正常。但是对于x64,Visual显示了错误:
LNK4272:库机器类型'X86‘与目标计算机类型'x64’冲突
还有其他人面对这件事吗?
发布于 2017-03-06 12:10:38
找出我哪里出了问题。
在创建.lib文件时,我们应该使用以下命令:lib /def:sqlite3.def /machine:X64 /out:sqlite3.lib
我之前跳过了/machine:X64选项。最好看看命令提供的所有选项是什么。
示例:lib /?
产出如下:
usage: LIB [options] [files]
options:
/DEF[:filename]
/ERRORREPORT:{NONE|PROMPT|QUEUE|SEND}
/EXPORT:symbol
/EXTRACT:membername
/INCLUDE:symbol
/LIBPATH:dir
/LIST[:filename]
/LTCG
/MACHINE:{ARM|ARM64|EBC|X64|X86}
/NAME:filename
/NODEFAULTLIB[:library]
/NOLOGO
/OUT:filename
/REMOVE:membername
/SUBSYSTEM:{BOOT_APPLICATION|CONSOLE|EFI_APPLICATION|
EFI_BOOT_SERVICE_DRIVER|EFI_ROM|EFI_RUNTIME_DRIVER|
NATIVE|POSIX|WINDOWS|WINDOWSCE}[,#[.##]]
/VERBOSE
/WX[:NO]
https://stackoverflow.com/questions/42623284
复制相似问题