操作系统:Windows 7 Enterprise x64 IDE:Eclipse Juno/CDT 编译器:MinGW 4.6.2 (C:\MinGW)
像user697111一样,我无法让 ld.exe 找到外部库。
简单的程序可以正常编译和链接,但是当我尝试使用提供的库添加 SQL 功能时,我在 Eclipse 中收到以下错误消息:“c:/mingw/bin/../lib/gcc/mingw32/4.6.2/. ./../../../mingw32/bin/ld.exe: 找不到 -lC:\MinGW\lib\libodbc32.a"。
我将 C:\MinGW\lib 指定为项目库路径。我将 C:\MinGW\lib\libodbc32.a 指定为唯一的项目库(这使得未解决的引用错误在 IDE 中消失了)。
我切换到 CLI 并粘贴了编译命令。对于库名称,我尝试过:odbc32、odbc32.a、libodbc32、libcodbc32.a 我也尝试过:odbccp32、odbccp32.a、libodbccp32、libodbccp32.a 我使用过正斜杠、反斜杠、双反斜杠、引号在路径周围,在整个 -l 参数周围加上引号(这是 Eclipse 对 -L 参数所做的)。
我将库复制到包含已编译代码的目录中,以消除指定路径的需要。我将它们复制到包含 ld.exe 的目录中。我更新了 Windows 路径以包含该目录并重新启动 Eclipse 和 CLI。
如果我完全删除 -l 参数,我会得到各种未解决的引用错误。似乎 ld.exe正在查找该库,但一心想要隐藏真正的问题。
链接到内置 SQL 库的秘诀是什么?