Mam problem, który utknął mi przez półtora dnia i chciałbym uzyskać pomoc.upgrade do osx lwa, bundler dostaje błędy rozszerzenia natywnego - brak takiego pliku lub katalogu
Przenosiłem moją ostatnią aplikację rails 3 między moim komputerem iMac i moim komputerem Macbook Pro, z prostą kopią i do tej pory nie miałem żadnych problemów.
fyi, używam rvm do zarządzania moimi wersjami projektu.
Dostałem nowy iMac z zainstalowanym lwem i wszystko wyglądało dobrze, dopóki nie uruchomiłem aktualizacji pakietu. Odtąd nie byłem w stanie zmusić bundlera do działania. Problemy pojawiają się podczas budowania natywnego rozszerzenia gem.
Po uruchomieniu aktualizacji pakietu nic nie działa na moim komputerze iMac (osx lion). Mogę kontynuować aktualizację pakietu na moim laptopie (Snow Leopard).
Chciałbym móc dalej rozwijać się na mojej maszynie Lion. Oto, co zrobiłem do tej pory:
Początkowo mam pewne błędy dotyczące moich kompilatorów, ale od czasu ponownego zainstalowania xcode i uruchomienia instalatora, nie mam już tych błędów.
Nadal nadal dostaję błędy w mojej kompilacji nokogiri. W pewnym momencie po kilka instrukcji na blogu (a nie:
sudo port upgrade --enforce-variants libxml2 +universal
ale wydawało się nie mieć znaczenia dla Nokogiri budowy
Teraz kiedy zrobić aktualizację Bundle Dostaję.
Installing nokogiri (1.5.0) with native extensions /Users/tayloredwebsites/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:551:in `rescue in block in build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)
/Users/tayloredwebsites/.rvm/rubies/ruby-1.9.2-p136/bin/ruby extconf.rb
checking for libxml/parser.h... yes
checking for libxslt/xslt.h... yes
checking for libexslt/exslt.h... yes
checking for iconv_open() in iconv.h... no
checking for iconv_open() in -liconv... yes
checking for xmlParseDoc() in -lxml2... yes
checking for xsltParseStylesheetDoc() in -lxslt... yes
checking for exsltFuncRegister() in -lexslt... yes
checking for xmlHasFeature()... yes
checking for xmlFirstElementChild()... yes
checking for xmlRelaxNGSetParserStructuredErrors()... yes
checking for xmlRelaxNGSetParserStructuredErrors()... yes
checking for xmlRelaxNGSetValidStructuredErrors()... yes
checking for xmlSchemaSetValidStructuredErrors()... yes
checking for xmlSchemaSetParserStructuredErrors()... yes
creating Makefile
make
gcc-4.2 -I. -I/Users/tayloredwebsites/.rvm/rubies/ruby-1.9.2-p136/include/ruby-1.9.1/x86_64-darwin10.6.0 -I/Users/tayloredwebsites/.rvm/rubies/ruby-1.9.2-p136/include/ruby-1.9.1/ruby/backward -I/Users/tayloredwebsites/.rvm/rubies/ruby-1.9.2-p136/include/ruby-1.9.1 -I. -DHAVE_XMLHASFEATURE -DHAVE_XMLFIRSTELEMENTCHILD -DHAVE_XMLRELAXNGSETPARSERSTRUCTUREDERRORS -DHAVE_XMLRELAXNGSETPARSERSTRUCTUREDERRORS -DHAVE_XMLRELAXNGSETVALIDSTRUCTUREDERRORS -DHAVE_XMLSCHEMASETVALIDSTRUCTUREDERRORS -DHAVE_XMLSCHEMASETPARSERSTRUCTUREDERRORS -I/opt/local/include/libxml2 -I/usr/local/include/libxml2 -I/Users/tayloredwebsites/.rvm/rubies/ruby-1.9.2-p136/include/libxml2 -I/opt/local/include -I/usr/local/include -I/Users/tayloredwebsites/.rvm/rubies/ruby-1.9.2-p136/include -I/usr/include -I/usr/include/libxml2 -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long -fno-common -pipe -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -o html_document.o -c html_document.c
make: gcc-4.2: No such file or directory
make: *** [html_document.o] Error 1
Gem files will remain installed in /Users/tayloredwebsites/.rvm/gems/[email protected]/gems/nokogiri-1.5.0 for inspection.
Po wykonaniu tej czynności waaaay zbyt wiele razy, postanowiłem usunąć kapibary i lanuchy z mojego Gemfile, tak, że chciałbym ominąć ten błąd. i oto, wiązka zmiana daje mi jeszcze brak Bui ld rodem rozszerzenie:
Installing sqlite3 (1.3.5) with native extensions /Users/tayloredwebsites/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:551:in `rescue in block in build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)
/Users/tayloredwebsites/.rvm/rubies/ruby-1.9.2-p136/bin/ruby extconf.rb
checking for sqlite3.h... yes
checking for sqlite3_libversion_number() in -lsqlite3... yes
checking for rb_proc_arity()... yes
checking for sqlite3_initialize()... yes
checking for sqlite3_backup_init()... yes
checking for sqlite3_column_database_name()... no
checking for sqlite3_enable_load_extension()... no
checking for sqlite3_load_extension()... no
creating Makefile
make
gcc-4.2 -I. -I/Users/tayloredwebsites/.rvm/rubies/ruby-1.9.2-p136/include/ruby-1.9.1/x86_64-darwin10.6.0 -I/Users/tayloredwebsites/.rvm/rubies/ruby-1.9.2-p136/include/ruby-1.9.1/ruby/backward -I/Users/tayloredwebsites/.rvm/rubies/ruby-1.9.2-p136/include/ruby-1.9.1 -I. -DHAVE_RB_PROC_ARITY -DHAVE_SQLITE3_INITIALIZE -DHAVE_SQLITE3_BACKUP_INIT -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long -fno-common -pipe -o backup.o -c backup.c
make: gcc-4.2: No such file or directory
make: *** [backup.o] Error 1
Wygląda więc na to, że ja dostaję żadnego takiego błędu plik na tym opiera się na tym samym zestawie kodu, z podstawową różnicą, że jedna maszyna jest na lwa, a druga jest na Snow Leopard.
Więc może ktoś może mi pomóc z tymi pytaniami:
W moich badaniach, zauważyłem, że w Nokogiri budowy, libxml2 jest proszony w 3 miejscach (dwa z którym nie istnieje !!! !). Czy ktoś wie jak kontrolować te argumenty, aby usunąć te, które nie istnieją?
Kiedy patrzyłem na kompilację sqlite3, nie zauważyłem żadnych brakujących plików, ale wciąż je dostaję. Czy to możliwe, że zostanie to zawieszone z problemu nokogiri? Jeśli tak, to czy ktoś wie, jak mogę je usunąć?
Chciałbym wiedzieć, jakiego pliku brakuje i nie mogę znaleźć go w komunikacie o błędzie. Czy jest jakiś sposób, aby uzyskać szczegóły debugera z aktualizacji pakietu?
również zauważyłem, że w make katalog include zawiera katalog o nazwie ze starszą wersją ruby. Tak było przez jakiś czas, bez żadnych problemów, więc podejrzewam, że nie będzie to problemem, ale chciałem to wskazać.
lepiej byłoby zainstalować gcc-4.2 za pomocą tego pakietu https://github.com/kennethreitz/osx-gcc-installer – mobileAgent
nie zrobiłem powyższy pakiet, bo wygląda na to, że zastępuje Xcode! –
Teraz, gdy mam gcc wskazujące na llvm-gcc-4.2, otrzymuję configure: error: C preprocesor "/usr/bin/cpp-4.2" nie sprawdza poprawności (poprzednio ustawiałem cc, gcc C++ itd. wskazują na wersje llvm). –