2015-12-30 47 views
7

Ho riscontrato alcuni problemi nell'installazione di Jekyll su Ubuntu. Ecco alcune delle versioni che ho:Installazione di Jekyll su Ubuntu 14.04

trevor~$ ruby -v 
ruby 2.2.4p230 (2015-12-16 revision 53155) [x86_64-linux] 
trevor~$ gem -v 
2.5.1 
trevor~$ rvm -v 
rvm 1.26.11 (latest) by Wayne E. Seguin <[email protected]>, Michal Papis <[email protected]> [https://rvm.io/] 

Tuttavia, quando provo ad installare Jekyll, ottengo questi errori:

trevor~$ gem install jekyll 
Building native extensions. This could take a while... 
ERROR: Error installing jekyll: 
    ERROR: Failed to build gem native extension. 

    current directory: /home/trevor/.rvm/gems/ruby-2.2.4/gems/ffi-1.9.10/ext/ffi_c 
/home/trevor/.rvm/rubies/ruby-2.2.4/bin/ruby -r ./siteconf20151229-11854-1czjp2r.rb extconf.rb 
*** 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=/home/trevor/.rvm/rubies/ruby-2.2.4/bin/$(RUBY_BASE_NAME) 
    --with-ffi_c-dir 
    --without-ffi_c-dir 
    --with-ffi_c-include 
    --without-ffi_c-include=${ffi_c-dir}/include 
    --with-ffi_c-lib 
    --without-ffi_c-lib=${ffi_c-dir}/lib 
    --with-libffi-config 
    --without-libffi-config 
    --with-pkg-config 
    --without-pkg-config 
/home/trevor/.rvm/rubies/ruby-2.2.4/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 /home/trevor/.rvm/rubies/ruby-2.2.4/lib/ruby/2.2.0/mkmf.rb:541:in `try_link0' 
    from /home/trevor/.rvm/rubies/ruby-2.2.4/lib/ruby/2.2.0/mkmf.rb:556:in `try_link' 
    from /home/trevor/.rvm/rubies/ruby-2.2.4/lib/ruby/2.2.0/mkmf.rb:637:in `try_ldflags' 
    from /home/trevor/.rvm/rubies/ruby-2.2.4/lib/ruby/2.2.0/mkmf.rb:1780:in `pkg_config' 
    from extconf.rb:15:in `<main>' 

To see why this extension failed to compile, please check the mkmf.log which can be found here: 

    /home/trevor/.rvm/gems/ruby-2.2.4/extensions/x86_64-linux/2.2.0/ffi-1.9.10/mkmf.log 

extconf failed, exit code 1 

Gem files will remain installed in /home/trevor/.rvm/gems/ruby-2.2.4/gems/ffi-1.9.10 for inspection. 
Results logged to /home/trevor/.rvm/gems/ruby-2.2.4/extensions/x86_64-linux/2.2.0/ffi-1.9.10/gem_make.out 

O se io uso sudo:

trevor~$ sudo gem install jekyll 
ERROR: Error installing jekyll: 
    jekyll requires Ruby version >= 2.0.0. 

Ho provato a installare più versioni di ruby-dev come raccomandato da altri con un problema simile, ma questo non è sembrato essere di aiuto.

trevor~$ sudo apt-get install ruby2.2.4-dev 
Reading package lists... Done 
Building dependency tree  
Reading state information... Done 
E: Unable to locate package ruby2.2.4-dev 
E: Couldn't find any package by regex 'ruby2.2.4-dev' 

La stessa cosa accade con ruby2.0.0-dev. L'esecuzione di sudo apt-get install ruby-dev sembra installare 1.9.3.4. Indipendentemente da ciò, mi imbatto ancora degli stessi problemi sopra.

Qualche idea?

EDIT

Ecco la mia lista RVM:

trevor~$ rvm list 

rvm rubies 

    ruby-2.0.0-p643 [ x86_64 ] 
    ruby-2.2.1 [ x86_64 ] 
=* ruby-2.2.4 [ x86_64 ] 

# => - current 
# =* - current && default 
# * - default 

ho provato l'installazione di un paio di versioni diverse. Questo potrebbe causare un problema?

+0

"Per capire perché questa estensione non è riuscita a compilare, controlla il file mkmf.log che può essere trovato qui:" Forse quel file contiene alcune informazioni utili? – matt

+0

Avete 'gcc' installato (o il pacchetto' build-essential')? – matt

+0

@ user2909019 stai usando qualche gemset? – VKatz

risposta

19

I did try installing a couple different versions. Would this cause a
problem?

No

seguire il passo dato sarebbe di aiuto.

1:gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3

2:\curl -sSL https://get.rvm.io | bash # install RVM (development version)

3:rvm get head # assicurarsi RVM aggiornati

4:rvm install ruby # installerà ultima versione di rubino

5:rvm list # Listing installare rubini si ottiene versioni di rubino, che viene installato per RVM

6:rvm use < ruby-version > # per le istanze ruby-1.9.3-p125

7:gem install jekyll

Modifica aggiornamento Come hai modificato la risposta nel tuo senerio

trevor~$ rvm list 

rvm rubies 

    ruby-2.0.0-p643 [ x86_64 ] 
    ruby-2.2.1 [ x86_64 ] 
=* ruby-2.2.4 [ x86_64 ] 

rvm use 2.2.1 
gem install jekyll 

avrebbe funzionato !!!

+0

[Questi] (https://rvm.io/rvm/install) erano le istruzioni che ho seguito per 'rvm'. Poi ho fatto lo stesso dei tuoi passi 4-7. Non ha funzionato – user2909019

+0

@ user2909019 il tuo problema è stato risolto? – VKatz

+1

Wow, sì, ha funzionato. Grazie! Puoi spiegare perché il 2.2.1 funziona mentre il 2.2.4 no? – user2909019

-1

L'errore che si ottiene dice tutto ERRORE: Errore durante l'installazione di jekyll: jekyll richiede la versione di Ruby> = 2.0.0. Hai bisogno di una versione di Ruby che sia almeno 2.0.0 o successiva. Raccomando sempre l'ultima versione, a meno che non sia necessaria una versione diversa per un motivo specifico.

Quindi quello che devi fare è compilare una versione più recente di rubino. Raccomando l'ultima versione 2.3.0. È possibile scaricarlo da ruby-lang.org/en/download. Compilare non è così difficile come dicono tutti, c'è una bella annotazione da Compiling Easy HowTo. Una volta compilato, dovresti riuscire a installare jekyll con la gemma e farlo funzionare. Se hai qualche problema o ricevi degli errori torna indietro e farò del mio meglio per aiutarti.

+0

C'è una ragione per cui l'attuale versione stabile non funziona? Perché la 2.3.0 dovrebbe essere diversa? – user2909019

+0

L'errore che si ottiene dice tutto ERRORE: Errore durante l'installazione di jekyll: jekyll richiede la versione di Ruby> = 2.0.0. È necessaria una versione di Ruby di almeno 2.0.0 o superiore. Raccomando sempre l'ultima versione, a meno che non sia necessaria una versione diversa per un motivo specifico. –

+1

La prima parte del mio post mostra che ho installato '2.2.4'. – user2909019

Problemi correlati