installing tiny_tds gives error on on mac os 10.10.5
Asked Answered
P

2

5

I am using mac os and I want to connect to sql server by using ruby driver. I want to use tiny_tds but it gives error for missing free_tds but it was already installed. How can pass this?

~ 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.

complete log is follows:

/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
Palladic answered 13/10, 2015 at 12:20 Comment(0)
G
16

This is what fixed it for me:

brew install freetds

sudo ARCHFLAGS="-arch x86_64" gem install tiny_tds

Guncotton answered 13/10, 2015 at 13:17 Comment(1)
I would one guess this sort of stuff? They should make gem installation seamless, regardless the OS. About your solution, I don't find it a good idea to install gems as a super user. Although, I tried to install it without the sudo and it didn't work for me, so I will look for another solution.Ianteen
I
0

See this answer in the GitHub issue.

gem install tiny_tds -- --disable-openssl
Ianteen answered 17/2, 2017 at 15:22 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.