ODBC问题:未解决的符号:SQLDriverConnect(代码)

ODBC问题:未解决的符号:SQLDriverConnect(代码),c,odbc,informix,C,Odbc,Informix,我通常使用SQLConnect进行连接,但我正在尝试解决遇到的问题,因此,我尝试使用SQLDriverConnect,但出现运行时错误: Unresolved symbol: SQLDriverConnect (code) 我确实在ODBC库中看到这个函数带有“T”符号,所以我不确定是什么导致了这个问题 应用程序运行在Linux RedHat 7上,DBMS是Informix 有什么想法吗?当你写“我的ODBC库”时,我不确定你指的是“我的ODBC库”还是“MyODBC库”;我用一种方法修好了

我通常使用SQLConnect进行连接,但我正在尝试解决遇到的问题,因此,我尝试使用SQLDriverConnect,但出现运行时错误:

Unresolved symbol: SQLDriverConnect (code)
我确实在ODBC库中看到这个函数带有“T”符号,所以我不确定是什么导致了这个问题

应用程序运行在Linux RedHat 7上,DBMS是Informix


有什么想法吗?

当你写“我的ODBC库”时,我不确定你指的是“我的ODBC库”还是“MyODBC库”;我用一种方法修好了,但如果需要的话,你应该用另一种方法修好。你应该确定你在哪个平台上工作;我怀疑Linux或其他Unix变体,但这将有助于确定。你说这是一个运行时错误,所以程序链接正常,但当你运行它时,你得到这个错误?让你的程序ldd你的程序或otool你的程序或类似的东西加载共享库列表会有帮助。您有哪个版本的Informix ODBC ClientSDK?感谢您提供的额外信息和对ODBC库的澄清。请显示重现问题的MCVE的代码-它不应该很长-并显示编译命令和可执行文件上的ldd输出。知道您使用的是哪个版本的ClientSDK仍然是有帮助的,尽管这可能不是一个控制因素。nm-g-o The-library.so | grep SQLDriverConnect的输出可能也很有用。当我将供应商提供的odbc库的静态版本更改为共享库verion时,找到了SQLDriverConnect,它工作了。这仍然不能解释为什么静态版本在symbols表中用't'符号显示SQLDriverConnect,但是,我在运行时得到了未解决的错误。