我正在尝试通过一个Rust应用程序连接到FileMaker (不要问我为什么……)-我遇到了find驱动程序的墙,该驱动程序是针对iodbc而不是unixodbc构建的,但我找到的所有ODBC机箱都使用unixodbc。
我不太熟悉cargo周围的底层东西,所以我不知道是否以及如何才能使Rust odbc板条箱链接到iodbc而不是unixodbc。我问过谷歌,但一无所获。
我是否可以强制cargo链接到特定的库( unixodbc和iodbc都在系统上,但unixodbc似乎总是默认选中的)?
发布于 2021-03-13 03:48:41
目前,所有的Rusts ODBC crates都使用odbc-sys绑定到本机库。-sys后缀是社区中系统绑定的惯用名称。我碰巧是odbc-sys的所有者,所以在遇到您的问题时,我冒失地添加了iodbc特性。在撰写本文时,以下内容应适用于您的Cargo toml:
[dependencies]
odbc-api = "0.19.2"
odbc-sys = { version = "0.17.2", features = ["iodbc"] }如果不指定特性,iodbc将不会被提取,因为动态库被命名为libiodbc.so而不是libodbc.so。
https://stackoverflow.com/questions/66474954
复制相似问题