Eu tenho o seguinte erro durante a instalação do sqlite3-ruby:
Construindo extensões nativas. Isto pode tomar algum tempo... ERRO: Erro ao instalar o sqlite3-ruby: ERRO: falha ao criar a extensão nativa da gema. /usr/bin/ruby1.8 extconf.rb verificando sqlite3.h ... não sqlite3.h está ausente. Tente 'port install sqlite3 + universal' ou 'yum install sqlite3-devel' *** extconf.rb falhou *** Não foi possível criar o Makefile por algum motivo, provavelmente falta de bibliotecas e / ou cabeçalhos necessários. Verifique o arquivo mkmf.log para obter mais detalhes. Você pode precisar de opções de configuração. Opções de configuração fornecidas: --com-opt-dir --without-opt-dir --with-opt-include --without-opt-include = $ {opt-dir} / include --com-opt-lib --without-opt-lib = $ {opt-dir} / lib --com-fazer-prog --without-make-prog --srcdir =. --curdir --ruby = / usr / bin / ruby1.8 --with-sqlite3-dir --without-sqlite3-dir --with-sqlite3-include --without-sqlite3-include = $ {sqlite3-dir} / include --with-sqlite3-lib --without-sqlite3-lib = $ {sqlite3-dir} / lib Os arquivos gem permanecerão instalados em /usr/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.3.1 para inspeção. Resultados registrados em /usr/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.3.1/ext/sqlite3/gem_make.out
sqlite3.h está localizado em / usr / include /
sudo gem instala o sqlite3-ruby --without-sqlite3-include = / usr / include
não funciona
ERRO: Ao executar o gem ... (OptionParser :: InvalidOption) opção inválida: --without-sqlite3-include = / usr / include
Ubuntu 10.04
ruby
ubuntu
sqlite
sqlite3-ruby
Dmitry
fonte
fonte
sqlite3
, não #sqlite3-ruby
Respostas:
Você precisa dos cabeçalhos de desenvolvimento SQLite3 para compilar a extensão nativa da gema. Você pode instalá-los executando (possivelmente com
sudo
):fonte
sudo apt-get install libsqlite3-dev
. Obrigado.Você só precisa de um
--
lá.Isso especifica que a opção não é a gema diretamente, mas a gema específica.
fonte
No meu caso, não tenho compiladores básicos instalados, então
resolveu meu problema, mas para a maioria das pessoas acho que https://stackoverflow.com/a/3649005/417267 é a solução.
fonte
Se você roda no ubuntu e usa o RVM para ruby on rails, adicione PRIMEIRO:
OU Você pode verificar com estes comandos:
Este comando irá preparar para você dois pacotes: sqllite3 e libsqlite3-dev
-Agora, instale o sqlite gem
O Ubuntu não precisa de sudo.
Boa sorte! Nota: estou usando o Ubuntu 10.10 e está funcionando.
fonte
Isto é o que eu fiz:
from: http://cuasan.wordpress.com/2010/10/13/rails-3-on-debian-with-sqlite-3/
fonte
Isso foi simplesmente o suficiente para fazê-lo funcionar
Graças a marshluca
fonte
Tentei todas as outras soluções, nenhuma ajudou.
Acabou que você também precisa do pacote dev para o próprio ruby. Para mim, isso ajudou
Ele tem muitas dependências desagradáveis (como emacs, wtf?), Apenas
deve ficar bem. Depois de instalado (e você tem os pacotes sqlite e sqlite-dev instalados)
Funciona como um encanto.
fonte
Aqui está uma resposta melhor do HEROKU - não é possível executar o git push heroku master
Como você não pode usar o sqlite3 no heroku, adicione-o ao seu Gemfile:
fonte
Teve esse mesmo problema e o seguinte funcionou para mim:
compile o sqlite3 como biblioteca estática, instale em algum lugar no diretório inicial e forneça essa opção para o processo de instalação da gem.
Vá para a página de download e pegue a fonte. A versão mais recente atualmente é http://www.sqlite.org/sqlite-autoconf-3070400.tar.gz
tar -xf no arquivo ou faça o que você normalmente faz para descompactar; entrar no diretório
./configure --disable-shared --enable-static --prefix = / some / caminho / em / meu / home
compile, instale e quando estiver instalando a gema ...
O gem instala o sqlite3-ruby - --with-sqlite3-dir = / some / path / in / my / home
fonte
No sqlite3-ruby gem não é possível encontrar o sqlite3.h no ubuntu :
Você também precisa instalar o próprio gcc, portanto, no total, seria:
Aparentemente, você recebe um erro errado apontando para um sqlite3.h ausente quando o problema real está ausente no próprio gcc.
fonte
A solução é adicionar
--
para separar osconfigure
parâmetros dosgem
parâmetros.ao invés de
tente isso, tudo em uma linha, inclua
--
após o últimogem
parâmetro e antes dosconfigure
parâmetros:Isso deve contornar esse erro:
fonte
Não
--without-sqlite3-include=/usr/include
, mas--with-sqlite3-include=/usr/include
.fonte
Esse é exatamente o mesmo problema que tive algumas semanas atrás. Descobri que precisava baixar os cabeçalhos / bibliotecas mais recentes da página de download do SQLite. Experimente, espero que isso ajude!
fonte
Para mim, o problema foi resolvido com o mkmf, que está no ruby1.8-dev.
Graças a mentalizado para esse.
fonte
Eu concordo com Danya Vershinin & EnotionZ .
Se não puder usar o apt-get:
fonte
Você quebrou a versão do RVM. O Ubuntu faz algo no RVM que produz muitos erros, a única maneira segura de corrigir por enquanto é: sudo apt-get --purge remover ruby-rvm sudo rm -rf / usr / share / ruby…, se isso não ajudar depois reinicie o seu computador. instale o RVM: \ curl -L https://get.rvm.io | bash -s stable --ruby --autolibs = enable --auto-dotfiles Se você precisar de alguma ajuda, dê uma olhada no Instalando Ruby no Ubuntu 12.04, o que dá um pouco mais de explicação
fonte
Esqueça tudo e faça isso,
corre
Isso é para rhel, execute o mesmo para o ubuntu.
fonte
Nenhuma das soluções mencionadas acima funcionou para mim, mesmo após a instalação
ruby2.5-dev
elibsqlite3-dev
. Então tentei usar emPostgreSql
vez desqlite
. Isso funcionou bem. Para usar emPostgreSql
vez do sqlite, use este comando ao criar orails
projeto.Se você deseja usar
MySql
, use emmysql
vez depostgresql
.Caso contrário, você pode tentar sem
sqlite
.fonte
Acabei de fazer o downgrade para sqlite3-ruby '1.2.2'
fonte