安装 tiny_tds 在 mac os 10.10.5 上出现错误
installing tiny_tds gives error on on mac os 10.10.5
我正在使用 mac os 并且我想使用 ruby 驱动程序连接到 sql 服务器。我想使用 tiny_tds 但它给出了缺少 free_tds 的错误,但它已经安装了。这怎么能过?
~ brew install freetds
Warning: freetds-0.91.112 already installed
~ sudo gem install tiny_tds
Building native extensions. This could take a while...
ERROR: Error installing tiny_tds:
ERROR: Failed to build gem native extension.
完整日志如下:
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r ./siteconf20151013-22489-7z3h0n.rb extconf.rb
checking for sybfront.h... yes
checking for sybdb.h... yes
checking for tdsdbopen() in -lsybdb... no
Extracting freetds-0.91.112.tar.gz into tmp/x86_64-apple-darwin14/ports/freetds/0.91... OK
Running git apply with /Library/Ruby/Gems/2.0.0/gems/tiny_tds-0.7.0/ports/patches/freetds/0.91/Makefile.in.diff...
Running 'patch' for freetds 0.91... OK
Running git apply with /Library/Ruby/Gems/2.0.0/gems/tiny_tds-0.7.0/ports/patches/freetds/0.91/dblib-30-char-username.diff...
Running 'patch' for freetds 0.91... OK
Running 'configure' for freetds 0.91... OK
Running 'compile' for freetds 0.91... OK
Running 'install' for freetds 0.91... OK
Activating freetds 0.91 (from /Library/Ruby/Gems/2.0.0/gems/tiny_tds-0.7.0/ports/x86_64-apple-darwin14)...
checking for sybfront.h... yes
checking for sybdb.h... yes
checking for tdsdbopen() in -lsybdb... no
-----
freetds is missing.
-----
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers. Check the mkmf.log file for more details. You may
need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby
--help
--enable-lookup
--disable-lookup
--with-freetds-dir
--without-freetds-dir
--with-freetds-include
--without-freetds-include=${freetds-dir}/include
--with-freetds-lib
--without-freetds-lib=${freetds-dir}/
--with-sybdblib
--without-sybdblib
--enable-system-freetds
--disable-system-freetds
--enable-system-iconv
--disable-system-iconv
--enable-system-openssl
--disable-system-openssl
--with-freetds-dir
--without-freetds-dir
--with-freetds-include
--without-freetds-include=${freetds-dir}/include
--with-freetds-lib
--without-freetds-lib=${freetds-dir}/
--with-sybdblib
--without-sybdblib
extconf failed, exit code 1
这是为我修复的:
brew install freetds
sudo ARCHFLAGS="-arch x86_64" gem install tiny_tds
请参阅 GitHub 问题中的 this answer。
gem install tiny_tds -- --disable-openssl
我正在使用 mac os 并且我想使用 ruby 驱动程序连接到 sql 服务器。我想使用 tiny_tds 但它给出了缺少 free_tds 的错误,但它已经安装了。这怎么能过?
~ brew install freetds
Warning: freetds-0.91.112 already installed
~ sudo gem install tiny_tds
Building native extensions. This could take a while...
ERROR: Error installing tiny_tds:
ERROR: Failed to build gem native extension.
完整日志如下:
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r ./siteconf20151013-22489-7z3h0n.rb extconf.rb
checking for sybfront.h... yes
checking for sybdb.h... yes
checking for tdsdbopen() in -lsybdb... no
Extracting freetds-0.91.112.tar.gz into tmp/x86_64-apple-darwin14/ports/freetds/0.91... OK
Running git apply with /Library/Ruby/Gems/2.0.0/gems/tiny_tds-0.7.0/ports/patches/freetds/0.91/Makefile.in.diff...
Running 'patch' for freetds 0.91... OK
Running git apply with /Library/Ruby/Gems/2.0.0/gems/tiny_tds-0.7.0/ports/patches/freetds/0.91/dblib-30-char-username.diff...
Running 'patch' for freetds 0.91... OK
Running 'configure' for freetds 0.91... OK
Running 'compile' for freetds 0.91... OK
Running 'install' for freetds 0.91... OK
Activating freetds 0.91 (from /Library/Ruby/Gems/2.0.0/gems/tiny_tds-0.7.0/ports/x86_64-apple-darwin14)...
checking for sybfront.h... yes
checking for sybdb.h... yes
checking for tdsdbopen() in -lsybdb... no
-----
freetds is missing.
-----
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers. Check the mkmf.log file for more details. You may
need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby
--help
--enable-lookup
--disable-lookup
--with-freetds-dir
--without-freetds-dir
--with-freetds-include
--without-freetds-include=${freetds-dir}/include
--with-freetds-lib
--without-freetds-lib=${freetds-dir}/
--with-sybdblib
--without-sybdblib
--enable-system-freetds
--disable-system-freetds
--enable-system-iconv
--disable-system-iconv
--enable-system-openssl
--disable-system-openssl
--with-freetds-dir
--without-freetds-dir
--with-freetds-include
--without-freetds-include=${freetds-dir}/include
--with-freetds-lib
--without-freetds-lib=${freetds-dir}/
--with-sybdblib
--without-sybdblib
extconf failed, exit code 1
这是为我修复的:
brew install freetds
sudo ARCHFLAGS="-arch x86_64" gem install tiny_tds
请参阅 GitHub 问题中的 this answer。
gem install tiny_tds -- --disable-openssl