wake-up-neo.com

schienen 5.0.0 bei der Installation von "nio4r": Die native Erweiterung von Gem konnte nicht erstellt werden

Hier sind die Protokolle: http://Pastebin.com/CAgur9xd

Installing nio4r 1.2.1 with native extensions

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    C:/RailsInstaller/Ruby2.2.0/bin/Ruby.exe -r ./siteconf20160720-8272-c88sgk.rb extconf.rb --with-cflags=-std=c99
checking for unistd.h... *** 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=C:/RailsInstaller/Ruby2.2.0/bin/$(Ruby_BASE_NAME)
C:/RailsInstaller/Ruby2.2.0/lib/Ruby/2.2.0/mkmf.rb:456:in `try_do': The compiler failed to generate an executable file. (RuntimeError)
You have to install development tools first.
        from C:/RailsInstaller/Ruby2.2.0/lib/Ruby/2.2.0/mkmf.rb:587:in `try_cpp'
         from C:/RailsInstaller/Ruby2.2.0/lib/Ruby/2.2.0/mkmf.rb:1060:in `block in have_header'
        from C:/RailsInstaller/Ruby2.2.0/lib/Ruby/2.2.0/mkmf.rb:911:in `block in checking_for'
        from C:/RailsInstaller/Ruby2.2.0/lib/Ruby/2.2.0/mkmf.rb:351:in `block (2 levels) in postpone'
        from C:/RailsInstaller/Ruby2.2.0/lib/Ruby/2.2.0/mkmf.rb:321:in `open'
        from C:/RailsInstaller/Ruby2.2.0/lib/Ruby/2.2.0/mkmf.rb:351:in `block in postpone'
        from C:/RailsInstaller/Ruby2.2.0/lib/Ruby/2.2.0/mkmf.rb:321:in `open'
        from C:/RailsInstaller/Ruby2.2.0/lib/Ruby/2.2.0/mkmf.rb:347:in `postpone'
        from C:/RailsInstaller/Ruby2.2.0/lib/Ruby/2.2.0/mkmf.rb:910:in `checking_for'
        from C:/RailsInstaller/Ruby2.2.0/lib/Ruby/2.2.0/mkmf.rb:1059:in `have_header'
        from extconf.rb:3:in `<main>'

extconf failed, exit code 1

bei der Installation des Bundles wird zurückgegeben (beginnt in Zeile 117 in den Protokollen):

Installing nio4r 1.2.1 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

Das Bundle kann also nicht installiert werden. Es kehrt am Ende zurück:

An error occurred while installing nio4r (1.2.1), and Bundler cannot continue.
Make sure that `gem install nio4r -v '1.2.1'` succeeds before bundling.

Hinweis: Ich habe die Lösungen in anderen Fragen ausprobiert, aber es ist immer noch dasselbe. Wenn es möglich ist, "nio4r" manuell zu installieren, sagen Sie mir bitte, wie.

9
Mfms99

Ich habe das gleiche Problem, als ich versuchte, meine Rails auf V5.0.0 zu aktualisieren. Ich folge dieser Anweisung und es funktioniert perfekt. Lesen Sie den Abschnitt "Installieren des Ruby DevKit" hier >> http://jekyll-windows.juthilo.com/1-Ruby-and-devkit/

7
Melvin Ch'ng

Lösung für Fedora 64bit

Sudo dnf install redhat-rpm-config
3
lord5et

Mein Sohn hat dieses Problem für mich behoben. Das Problem war, dass ich zuerst Ruby und dann den Rails Installer installiert habe. Also musste ich Ruby deinstallieren und nur mit dem Rails-Installationsprogramm neu installieren. 

1
David Hernandez

Ich bin auf dieses Problem gestoßen, als ich auch Rails aufbaute. (Suche nach einer Alternative zu PHP).

  • Mir wurde klar, dass ich x86 Ruby mit x64 Devkit installiert hatte. Also habe ich zuerst x64 Ruby heruntergeladen, das ich installiert und die x86-Version deinstalliert habe. Ich stellte sicher, dass meine Pfadvariablen gut festgelegt waren.
  • Dann installierte ich Devkit mit den Anweisungen auf dieser Seite http://rubyonwindowsguides.github.io/book/ch02-04.html
  • Schließlich habe ich Rails installiert und es hat dieses Mal ohne Fehler funktioniert

Hoffe das hilft

1
Hezzy Okello

Ich hatte ein ähnliches Problem und das Ausführen dieses Befehls löste mein Problem.

bundle config build.nio4r --with-cflags="-std=c99"

Jetzt können Sie erfolgreich bundle install ausführen.

0
techdreams

So zitieren Sie aus Ihrer Protokollausgabe:

Der Compiler konnte keine ausführbare Datei erstellen. (Laufzeit Fehler) Sie müssen zuerst Entwicklungswerkzeuge installieren.

Unter Windows müssen Sie das DevKit installieren, um Gems kompilieren zu können.

0
Holger Just

Hatte das gleiche Problem auf Ubuntu 16.04 . Was ich getan habe, um das Problem zu beheben:

Gemfile.lock entfernen: Sudo rm Gemfile.lock Installierter Ruby-Dev: 

Sudo apt-add-repository ppa: brightbox/Ruby-ng Sudo apt-get update Sudo apt-get installieren

und der wichtige Schritt: REBOOT!

0
keke

Wenn Sie Windows verwenden und Ruby mit RubyInstaller mit einer Version über oder gleich 2.4 installiert haben, sollten Sie DevKit nicht von der RubyInstaller-Website installieren und nur "msys64" verwenden, das nach Ruby mit RubyInstaller installiert wird (geben Sie zur Installation beider msys die Nummer 3 ein.) und mingw). Löschen Sie das devkit-Verzeichnis und seinen Pfad aus der PATH-Umgebungsvariablen. Wenn rubygems dann versucht, nio4r zu installieren und C-Compiler aufzurufen, werden die msys-Server aufgerufen. __ Lesen Sie hier https://rubyinstaller.org/2017/05/25 /rubyinstaller-2.4.1-1-released.html Weitere Informationen zu MSYS2 und DevKit in RubyInstaller 

0
SkipIntro

Entfernen Sie die Datei Gemfile.lock und führen Sie den Installationsbefehl für das Bundle aus

0