Leap 15: Vagrant kann keine Plugins installieren

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

Hinweis: In dem Thema Leap 15: Vagrant kann keine Plugins installieren gibt es 8 Antworten. Der letzte Beitrag () befindet sich ganz unten auf dieser Seite.
  • Leap 15: Vagrant kann keine Plugins installieren

    Hallo zusammen

    Ich möchte mich gern in Ansible einlesen und möchte zum testen Vagrant mit dem KVM Provider nutzen.

    Nachdem ich das offizielle Vagrant-RPM installiert habe muss ich nun das libvirt provider installieren, was allerdings immer fehlschlägt.

    Quellcode

    1. vagrant plugin install vagrant-libvirt
    2. Installing the 'vagrant-libvirt' plugin. This can take a few minutes...
    3. Fetching: excon-0.62.0.gem (100%)
    4. Fetching: formatador-0.2.5.gem (100%)
    5. Fetching: fog-core-1.43.0.gem (100%)
    6. Fetching: fog-json-1.2.0.gem (100%)
    7. Fetching: mini_portile2-2.3.0.gem (100%)
    8. Fetching: nokogiri-1.8.4.gem (100%)
    9. Building native extensions. This could take a while...
    10. Bundler, the underlying system Vagrant uses to install plugins,
    11. reported an error. The error is shown below. These errors are usually
    12. caused by misconfigured plugin installations or transient network
    13. issues. The error from Bundler is:
    14. ERROR: Failed to build gem native extension.
    15. current directory: /home/marc/.vagrant.d/gems/2.4.4/gems/nokogiri-1.8.4/ext/nokogiri
    16. /opt/vagrant/embedded/bin/ruby -r ./siteconf20180714-7439-1nlz3j6.rb extconf.rb
    17. checking if the C compiler accepts ... *** extconf.rb failed ***
    18. Could not create Makefile due to some reason, probably lack of necessary
    19. libraries and/or headers. Check the mkmf.log file for more details. You may
    20. need configuration options.
    21. Provided configuration options:
    22. --with-opt-dir
    23. --with-opt-include
    24. --without-opt-include=${opt-dir}/include
    25. --with-opt-lib
    26. --without-opt-lib=${opt-dir}/lib
    27. --with-make-prog
    28. --without-make-prog
    29. --srcdir=.
    30. --curdir
    31. --ruby=/opt/vagrant/embedded/bin/$(RUBY_BASE_NAME)
    32. --help
    33. --clean
    34. /opt/vagrant/embedded/lib/ruby/2.4.0/mkmf.rb:457:in `try_do': The compiler failed to generate an executable file. (RuntimeError)
    35. You have to install development tools first.
    36. from /opt/vagrant/embedded/lib/ruby/2.4.0/mkmf.rb:572:in `block in try_compile'
    37. from /opt/vagrant/embedded/lib/ruby/2.4.0/mkmf.rb:523:in `with_werror'
    38. from /opt/vagrant/embedded/lib/ruby/2.4.0/mkmf.rb:572:in `try_compile'
    39. from extconf.rb:138:in `nokogiri_try_compile'
    40. from extconf.rb:162:in `block in add_cflags'
    41. from /opt/vagrant/embedded/lib/ruby/2.4.0/mkmf.rb:630:in `with_cflags'
    42. from extconf.rb:161:in `add_cflags'
    43. from extconf.rb:410:in `<main>'
    44. To see why this extension failed to compile, please check the mkmf.log which can be found here:
    45. /home/marc/.vagrant.d/gems/2.4.4/extensions/x86_64-linux/2.4.0/nokogiri-1.8.4/mkmf.log
    46. extconf failed, exit code 1
    Alles anzeigen
    Ich vermute dass hier ein Problem mit den Ruby-Dependencies vorliegt. So wie es scheint nutzt Vagrant Ruby 2.4, Leap 15 bringt aber bereits 2.5 mit.
    Eine andere Vermutung ist, dass mir ein paar Devel-Pakete fehlen, da diese nokogiri-ruby-lib anscheinend irgendwelche C-Bindings nutzt. Allerdings hat es auch nichts geholfen das Entwickler-Pattern zu installieren.

    Es gab zu diesem Fehler bereits Issues im Vagrant-Repo, allerdings relativ alt zu Version 1.6 und die dort beschriebenen Workarounds funktionieren mit Leap 15 nicht.

    Meine Hoffnung ist dass in dieser Community jemand Vagrant nutzt und das Problem lösen konnte :)

    Für den Inhalt des Beitrages 122803 haftet ausdrücklich der jeweilige Autor: lostiniceland

  • Es scheint sich um beide meiner Thesen zu handeln

    Quellcode

    1. "gcc -o conftest -I/opt/vagrant/embedded/include/ruby-2.4.0/x86_64-linux -I/opt/vagrant/embedded/include/ruby-2.4.0/ruby/backward -I/opt/vagrant/embedded/include/ruby-2.4.0 -I. -I/opt/vagrant/embedded/include -I/opt/vagrant/embedded/include -I/vagrant-substrate/cache/ruby-2.4.4/include -O3 -fPIC conftest.c -L. -L/opt/vagrant/embedded/lib -Wl,-rpath,/opt/vagrant/embedded/lib -L/opt/vagrant/embedded/lib -Wl,-rpath,/opt/vagrant/embedded/lib -L. -L/opt/vagrant/embedded/lib -Wl,-rpath=XORIGIN/../lib:/opt/vagrant/embedded/lib -fstack-protector -rdynamic -Wl,-export-dynamic -L/opt/vagrant/embedded/lib -Wl,-rpath,/opt/vagrant/embedded/lib -Wl,-rpath,'/../lib' -Wl,-rpath,'/../lib' -lruby -lpthread -lrt -lgmp -ldl -lcrypt -lm -lc "
    2. sh: /opt/vagrant/embedded/lib/libreadline.so.7: no version information available (required by sh)
    3. sh: symbol lookup error: /opt/vagrant/embedded/lib/libreadline.so.7: undefined symbol: PC
    4. checked program was:
    5. /* begin */
    6. 1: #include "ruby.h"
    7. 2:
    8. 3: int main(int argc, char **argv)
    9. 4: {
    10. 5: return 0;
    11. 6: }
    12. /* end */
    Alles anzeigen

    Für den Inhalt des Beitrages 122843 haftet ausdrücklich der jeweilige Autor: lostiniceland

  • Similar to the issues reported in #8986 when attempting to install the vagrant-libvirt plugin on openSUSE Leap 15 I get a failure related to problems with the embedded libreadline.so.7.

    The workaround identified in GH-8986, with regard to renaming the offending embedded libreadline.so.X library, also resolves the problem in this case.
    vagrant 2.0.0 on openSuse Leap 42.2 won't build vagrant-libvirt · Issue #8986 · hashicorp/vagrant · GitHub
    Links in dieser Signatur bitte zum Lesen anklicken!

    Code-Tags <<<Klick mich
    zypper <<<Klick mich
    Netzwerkprobleme <<<Klick mich

    Für den Inhalt des Beitrages 122861 haftet ausdrücklich der jeweilige Autor: Sauerland

  • Ich halte Ruby für einigermaßen fragwürdig. Besonders unter openSUSE.
    Inkonsistenzen und Rückwärtsinkompatabilitäten verlangen ziemlich fundiertes Ruby- Können,
    um es zu handeln, falls es mal gerade wieder zickt.

    Warum willst du, wo du doch eh ein Python- Programm (Ansible) einsetzen möchtest, deine KVM Dinger ausgerechnet mit Ruby Zeuchs verwalten?
    Es gibt eine sehr bequeme Pythonlösung dafür, die bei der Installation von */KVM sowieso installiert wird.

    Und wenn du das wirklich durchprügeln willst, solltest du auf meine Frage antworten.
    Sokrates sagte, dass er nichts wisse.
    Ich bin viel, viel klüger als Sokrates.
    Ich weiß ganz genau, dass ich gar nichts weiß.

    Für den Inhalt des Beitrages 122878 haftet ausdrücklich der jeweilige Autor: Berichtigung

  • Als Java-Entwickler halte ich von Ruby sowieso nix...*duck* :)

    Nee, im Ernst: ich nehme mich bei uns gerade verstärkt dem Thema DevOps an und möchte hier vor allem in der Infrastruktur mehr auf TDD zurückgreifen. Klar könnte ich die Ansible-Sachen auch direkt gegen unsere ESX-VMs feuern aber mir gefiehl der Ansatz dass ich mir mit Vagrant Testinstanzen hochziehen kann um gegen diese zu testen Zumal Ansible direkt in Vagrant integriert ist.

    Da ich auf Arbeit auf Windows mit Hyper-V (oder VirtualBox) für die lokale Entwicklung angewiesen bin, zu Hause für mich aber mit OpenSuse und KVM arbeite bietet sich Vagrant ebenfalls an. Und außerdem steht es so im Buch Ansible for DevOps :)

    Mit welchem Python-Tool würde ich denn KVM-VMs automatisiert steuern?

    P.S. der Workaround für Vagrant (die Ruby-Sourcen umbenennen) hat funktioniert und ich hoffe dass es bis zum nächsten Release von Vagrant einen Fix dafür gibt.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von lostiniceland ()

    Für den Inhalt des Beitrages 122891 haftet ausdrücklich der jeweilige Autor: lostiniceland

  • Das Tool meiner Wahl wäre schicht die virsh.
    Das sollte bei Qemu/KVM sowieso schon installiert sein.
    Und irgendwie ist mir nicht klar, was der Vorteil mit Vagrant sein soll.
    Beim Aufsetzen neuer VMs von einem Image, oder dergleichen, verwende ich eh gepatchte "Rohmedien", da auf einem Server SSH sowieso zwingend ist.
    Womit es aus meiner Sicht völlig egal is, ob Ansible integriert ist, oder nicht.
    Der allererste Job bleibt immer das ganze Gedöns mit Ansible reinzuballern.
    Wenn er dazu vorher Ansible auch erst reinballern muss, soll er doch machen, mir völlig Jacke. Auf die Minute kommt es bei der Gesamtlaufzeit auch nicht an. Und eine Technologie weniger im Stack, scheint mir die Minute mehr als aufzuwiegen.
    Aber egal. Wenn's dir taugt...

    Nur weil es im Buch Bibel steht, tanze ich noch lange nicht um irgendwelche Kälber.
    Und ganz ehrlich: So einen Würg-around gönne ich kichernd allen, die Ruby immer noch hochhalten. Die haben sich das redlich verdient.
    scnr.
    Sokrates sagte, dass er nichts wisse.
    Ich bin viel, viel klüger als Sokrates.
    Ich weiß ganz genau, dass ich gar nichts weiß.

    Für den Inhalt des Beitrages 122903 haftet ausdrücklich der jeweilige Autor: Berichtigung