x64 的 SQLite3.dll

Posted

技术标签:

【中文标题】x64 的 SQLite3.dll【英文标题】:SQLite3.dll for x64 【发布时间】:2017-03-06 10:32:34 【问题描述】:

从下载 sqlite.org/download,他们为 x86 和 x64 提供 Precompiled Binaries for Windows。 因此,下载的是 .def 文件和 .dll 文件。 使用这两个文件,您可以创建 .lib 文件。 [命令:lib /def:yourfile.def /out:yourfile.lib]

在创建 .lib 文件并将其用作依赖项时,x86 一切正常。但是对于 x64,Visual Studio 显示错误:

LNK4272:库机器类型“X86”与目标机器类型“x64”冲突

还有其他人面临这个吗?

【问题讨论】:

为什么是 DLL?只需compile it into your application。 谢谢。还发现了我哪里出错了。在创建 .lib 文件时,我们应该使用以下命令: lib /def:sqlite3.def /machine:X64 /out:sqlite3.lib 我之前跳过了 /machine:X64 选项。 请把它写成答案。 【参考方案1】:

找出我哪里出错了。

在创建 .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]

【讨论】:

以上是关于x64 的 SQLite3.dll的主要内容,如果未能解决你的问题,请参考以下文章

判断指定进程是否为x64的方法(在ntdll判断某个x64函数是否存在)

X64 反汇编程序 IDA 和 WINDBG。 IDA 不显示 x64 操作码

原生 x64 的编辑并继续

x64 代码签名证书? [关闭]

FLD 指令 x64 位

x64内核内存空间结构