2016-12-28 101 views
1

我试图安装Metasploit的框架(不重要)和打捆尝试安装sqlite3的,这是它一贯失败。安装SQLITE3(在命令行中执行sqlite3的让我到环境中),并使用brew link sqlite3链接(并添加--force,出于某种原因),但每次bundler install失败,此错误:红宝石SQLITE3安装sqlite3_libversion_number()MacOS的塞拉利昂

sudo gem install sqlite3 
Building native extensions. This could take a while... 
ERROR: Error installing sqlite3: 
    ERROR: Failed to build gem native extension. 

    /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb 
Error: Running Homebrew as root is extremely dangerous and no longer supported. 
As Homebrew does not drop privileges on installation you would be giving all 
build scripts full access to your system. 
checking for sqlite3.h... yes 
checking for pthread_create() in -lpthread... yes 
checking for sqlite3_libversion_number() in -lsqlite3... no 
sqlite3 is missing. Try 'brew install sqlite3', 
'yum install sqlite-devel' or 'apt-get install libsqlite3-dev' 
and check your shared library search path (the 
location where your sqlite3 shared library is located). 
*** 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 
    --with-sqlite3-config 
    --without-sqlite3-config 
    --with-pkg-config 
    --without-pkg-config 
    --with-sqlite3-dir 
    --without-sqlite3-dir 
    --with-sqlite3-include 
    --without-sqlite3-include=${sqlite3-dir}/include 
    --with-sqlite3-lib 
    --without-sqlite3-lib=${sqlite3-dir}/ 
    --with-pthreadlib 
    --without-pthreadlib 
    --with-sqlite3lib 
    --without-sqlite3lib 


Gem files will remain installed in /Library/Ruby/Gems/2.0.0/gems/sqlite3-1.3.12 for inspection. 
Results logged to /Library/Ruby/Gems/2.0.0/gems/sqlite3-1.3.12/ext/sqlite3/gem_make.out 
+0

我想要安装'gem install sequel mysql sqlite3'完全相同的问题,所以我可以像从https:// stackover那样从mysql转换到sqlite flow.com/a/11328913/539149您有没有找到解决方案? –

回答

7

我终于成功地解决了这个由指定内置的Mac OS X SQLite库目录在MacOS塞拉利昂10.12.5(16F73):

$ whereis sqlite3 
/usr/bin/sqlite3 
# if binary is in /usr/bin then library is typically in /usr/lib 
$ gem install sqlite3 -- --with-sqlite3-lib=/usr/lib 
Building native extensions with: '--with-sqlite3-lib=/usr/lib' 
This could take a while... 
Successfully installed sqlite3-1.3.13 
Parsing documentation for sqlite3-1.3.13 
Done installing documentation for sqlite3 after 0 seconds 
1 gem installed 

我试图指定Homebrew库目录,但由于某些原因没” t工作:

$ brew ls --verbose sqlite3 
/usr/local/Cellar/sqlite/3.19.3/.brew/sqlite.rb 
/usr/local/Cellar/sqlite/3.19.3/bin/sqlite3 
/usr/local/Cellar/sqlite/3.19.3/include/msvc.h 
/usr/local/Cellar/sqlite/3.19.3/include/sqlite3.h 
/usr/local/Cellar/sqlite/3.19.3/include/sqlite3ext.h 
/usr/local/Cellar/sqlite/3.19.3/INSTALL_RECEIPT.json 
/usr/local/Cellar/sqlite/3.19.3/lib/libsqlite3.0.dylib 
/usr/local/Cellar/sqlite/3.19.3/lib/libsqlite3.a 
/usr/local/Cellar/sqlite/3.19.3/lib/libsqlite3.dylib 
/usr/local/Cellar/sqlite/3.19.3/lib/pkgconfig/sqlite3.pc 
/usr/local/Cellar/sqlite/3.19.3/README.txt 
/usr/local/Cellar/sqlite/3.19.3/share/man/man1/sqlite3.1 
$ gem install sqlite3 -- --with-sqlite3-lib=/usr/local/Cellar/sqlite/3.19.3/lib 
This could take a while... 
ERROR: Error installing sqlite3: 
    ERROR: Failed to build gem native extension. 
... 

如果有人知道如何指定家酿库目录,请让我知道,因为这会在安装(据说MacPorts的作品,但我不再使用它)提供更多的控制。


对于任何人都好奇,下面是完整的命令来安装Ruby的Sequel

gem install sequel mysql sqlite3 -- --with-sqlite3-lib=/usr/lib 

而如何转换Laravel Homestead MySQL数据库监听的主机端口3306上从my comment on the question对于SQLite:

sequel mysql://homestead:[email protected]:3306/my_database -C sqlite://my_database.sqlite 
+0

2017-Nov-20'gem install sqlite3 - --with-sqlite3-lib =/usr/lib'完全解决我的问题,谢谢! – NamNamNam