在 Ubuntu 上安装 ruby-odbc gem 时"ERROR: sql.h not found"



尝试在Debian/Ubuntu上安装ruby-odbc gem会导致以下错误;

"ERROR: sql.h not found"

这在OSX上也会发生,所以brew来拯救:

brew install unixodbc

安装unixodbc-dev包,然后再尝试gem Install

sudo apt-get install unixodbc-dev
gem install ruby-odbc

在mac上,gem找不到本机包。

    brew install unixodbc

查看安装路径:

    brew list unixodbc

你会得到这样的结果:

/opt/自酿酒酒窖/unixodbc/2.3.11/。瓶/etc/(2个文件)/opt/自酿酒酒窖/unixodbc/2.3.11/bin/dlt/opt/自酿酒酒窖/unixodbc/2.3.11/bin/isql/opt/自酿酒酒窖/unixodbc/2.3.11/bin/iusql/opt/自酿酒酒窖/unixodbc/2.3.11/bin/odbc_config/opt/自酿酒酒窖/unixodbc/2.3.11/bin/odbcinst/opt/自酿酒酒窖/unixodbc/2.3.11/bin/slencheck/opt/homebrew/Cellar/unixodbc/2.3.11/include/unixodbc/(2个文件)/opt/homebrew/Cellar/unixodbc/2.3.11/include/(11个文件)/opt/自酿酒酒窖/unixodbc/2.3.11/lib/libodbc.2.dylib/opt/自酿酒酒窖/unixodbc/2.3.11/lib/libodbccr.2.dylib/opt/自酿酒酒窖/unixodbc/2.3.11/lib/libodbcinst.2.dylib/opt/homebrew/Cellar/unixodbc/2.3.11/lib/pkgconfig//opt/homebrew/Cellar/unixodbc/2.3.11/lib/(其他6个文件)/opt/homebrew/Cellar/unixodbc/2.3.11/share/man/(8个文件)

将输出应用于

    gem install ruby-odbc -- --with-odbc-dir=[path to unixodbc]

的例子:

gem install ruby-odbc -- --with-odbc-dir=/usr/local/Cellar/unixodbc/2.3.11

这个答案对我很有用,非常感谢@tombeynon。它也比以前更简单,可以在docker容器中实现。

apt-get install unixodbc-dev
gem install odbc_adapter

最新更新