Mam następujący błąd podczas instalacji sqlite3-ruby:
Budowanie rozszerzeń natywnych. To może chwilę potrwać ... BŁĄD: Błąd instalacji sqlite3-ruby: BŁĄD: nie udało się zbudować natywnego rozszerzenia gem. /usr/bin/ruby1.8 extconf.rb sprawdzanie sqlite3.h ... nie Brak pliku sqlite3.h. Wypróbuj „port install sqlite3 + universal” lub „yum install sqlite3-devel” *** extconf.rb nie powiodło się *** Nie można utworzyć pliku Makefile z jakiegoś powodu, prawdopodobnie braku niezbędne biblioteki i / lub nagłówki. Sprawdź plik mkmf.log, aby uzyskać więcej Detale. Możesz potrzebować opcji konfiguracji. Dostarczone opcje konfiguracji: - z opcją-reż - bez-opt-reż - z opcją opt-include --without-opt-include = $ {opt-katalog} / include --with-opt-lib --without-opt-lib = $ {opt-dir} / lib --with-make-prog --with-make-prog --srcdir =. - curdir --ruby = / usr / bin / ruby1.8 --with-sqlite3-reż - bez-sqlite3-reż --with-sqlite3-include --without-sqlite3-include = $ {sqlite3-dir} / include --with-sqlite3-lib --without-sqlite3-lib = $ {sqlite3-dir} / lib Pliki Gem pozostaną zainstalowane w /usr/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.3.1 do kontroli. Wyniki są rejestrowane w /usr/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.3.1/ext/sqlite3/gem_make.out
sqlite3.h znajduje się w / usr / include /
sudo gem install sqlite3-ruby --without-sqlite3-include = / usr / include
nie działa
BŁĄD: Podczas wykonywania gem ... (OptionParser :: InvalidOption) niepoprawna opcja: --without-sqlite3-include = / usr / include
Ubuntu 10.04
ruby
ubuntu
sqlite
sqlite3-ruby
Dmitry
źródło
źródło
sqlite3
, notsqlite3-ruby
Odpowiedzi:
Potrzebujesz nagłówków programistycznych SQLite3, aby natywne rozszerzenie gem mogło się z nim kompilować. Możesz je zainstalować, uruchamiając (ewentualnie z
sudo
):źródło
sudo apt-get install libsqlite3-dev
. Dzięki.Potrzebujesz tylko
--
tam.Oznacza to, że opcja nie polega na bezpośrednim klejnotu, ale na konkretnym klejnocie.
źródło
W moim przypadku nie mam zainstalowanych podstawowych kompilatorów, więc
rozwiązał mój problem, ale dla większości osób myślę, że https://stackoverflow.com/a/3649005/417267 jest rozwiązaniem.
źródło
Jeśli działasz w Ubuntu i używasz RVM dla ruby na szynach, dodaj PIERWSZE:
LUB Możesz sprawdzić za pomocą tych poleceń:
To polecenie przygotuje dla ciebie dwa pakiety: sqllite3 i libsqlite3-dev
- Teraz zainstaluj klejnot sqlite
-używanie Ubuntu nie wymaga sudo.
Powodzenia! Uwaga: używam Ubuntu 10.10 i działa.
źródło
Oto co zrobiłem:
from: http://cuasan.wordpress.com/2010/10/13/rails-3-on-debian-with-sqlite-3/
źródło
To wystarczyło, aby działało
Dzięki marshluca
źródło
Próbowałem WSZYSTKICH innych rozwiązań, żadne nie pomogło.
Okazało się, że potrzebujesz również pakietu deweloperskiego dla samego rubinu. Dla mnie to pomogło
Ma jednak wiele nieprzyjemnych zależności (jak emacs, wtf?), Tylko
powinno być dobrze. Po zainstalowaniu (i masz zainstalowane pakiety sqlite i sqlite-dev)
działa jak marzenie.
źródło
Oto lepsza odpowiedź od HEROKU - nie można uruchomić git push heroku master
Ponieważ nie możesz używać sqlite3 na heroku, dodaj to do swojego Gemfile:
źródło
Czy ten sam problem i następujące działały dla mnie:
skompiluj sqlite3 jako bibliotekę statyczną, zainstaluj gdzieś w swoim katalogu domowym, a następnie podaj tę opcję dla procesu instalacji gem.
Przejdź do strony pobierania i pobierz źródło. Najnowsza wersja w tej chwili to http://www.sqlite.org/sqlite-autoconf-3070400.tar.gz
tar -xf na pliku lub rób wszystko, co zwykle robisz, aby rozpakować; wejść do katalogu
./configure --disable-shared --enable-static --prefix = / some / path / in / my / home
skompiluj, zainstaluj, a kiedy instalujesz klejnot ...
gem install sqlite3-ruby - --with-sqlite3-dir = / some / path / in / my / home
źródło
Z sqlite3-ruby gem nie może znaleźć sqlite3.h na Ubuntu :
Musisz także zainstalować samą gcc, więc w sumie będzie to:
Najwyraźniej pojawia się błędny błąd wskazujący brakujący plik sqlite3.h, gdy w rzeczywistym problemie brakuje samego gcc.
źródło
Rozwiązaniem jest dodanie
--
oddzielnychconfigure
parametrów odgem
parametrów.zamiast
spróbuj tego, wszystko w jednym wierszu, pamiętaj o dołączeniu
--
po ostatnimgem
parametrze i przedconfigure
parametrami:Powinno to obejść ten błąd:
źródło
Nie
--without-sqlite3-include=/usr/include
, ale--with-sqlite3-include=/usr/include
.źródło
To jest dokładnie ten sam problem, który miałem kilka tygodni temu. Dowiedziałem się, że muszę pobrać najnowsze nagłówki / biblioteki ze strony pobierania SQLite. Wypróbuj, mam nadzieję, że to pomoże!
źródło
Dla mnie problem został rozwiązany przez pobranie mkmf, który znajduje się w ruby1.8-dev.
Dzięki za mentalizowane dla tego.
źródło
Zgadzam się z Danya Vershinin i EnotionZ .
Jeśli nie możesz użyć apt-get:
źródło
Masz zepsutą wersję RVM. Ubuntu robi coś z RVM, które powoduje wiele błędów, jedynym bezpiecznym sposobem na naprawę jest: sudo apt-get - purge usuń ruby-rvm sudo rm -rf / usr / share / ruby…, jeśli to nie pomoże następnie uruchom ponownie komputer. zainstaluj RVM: \ curl -L https://get.rvm.io | bash -s stable --ruby --autolibs = enable --auto-dotfiles Jeśli uznasz, że potrzebujesz trzymania się za ręce, spójrz na Instalowanie Ruby na Ubuntu 12.04, co daje nieco więcej wyjaśnień
źródło
Zapomnij o wszystkim i zrób to,
biegać
To dla Rhel, uruchom to samo dla Ubuntu.
źródło
Żadne z wyżej wymienionych rozwiązań nie działało dla mnie, nawet po zainstalowaniu
ruby2.5-dev
ilibsqlite3-dev
. Następnie spróbowałem użyćPostgreSql
zamiastsqlite
. To działało dobrze. Aby użyćPostgreSql
zamiast sqlite, użyj tego polecenia podczas tworzeniarails
projektu.Jeśli chcesz użyć,
MySql
użyjmysql
zamiastpostgresql
.W przeciwnym razie możesz spróbować bez
sqlite
.źródło
Właśnie obniżyłem wersję do sqlite3-ruby „1.2.2”
źródło