尝试在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