Apakah mungkin untuk menginstal ulang / memperbaiki ruby ​​sistem Mac OS X tanpa melakukan instalasi ulang OS lengkap?


15

Apa itu mungkin? Saya mengalami berbagai masalah setidaknya seminggu sekali sejak itu rusak atau sesuatu, terutama dengan homebrew.

Jika mungkin, tetapi akan menjadi ide yang lebih baik untuk memulai dari yang bersih, tolong beri tahu saya.


Pengaturan PATH saya: gist.github.com/506481
LBRapid

Dari jalur Anda, entri / opt / local menyarankan Anda juga memiliki macports. apa yang ditampilkan ruby?
user151019

Saya memang sudah menginstal macports, tetapi menggunakan ruby ​​mana yang hanya akan menunjukkan versi ruby ​​rvm. Masalah yang saya
hadapi

Jawaban:


3

Dalam pemahaman saya - perbaiki saya jika saya salah - Anda tidak perlu menginstal ulang semua Mac OS X untuk menginstal ulang sistem Anda Ruby. Seperti yang Anda ketahui, System Ruby hidup di /System/Library/Frameworks/Ruby.framework/. Jika folder itu dihapus atau rusak, atau jika symlink yang mengarah ke itu dihapus atau diubah, Anda tidak akan memiliki instal System Ruby yang berfungsi.

Untuk memperbaikinya, coba ini:

  1. Masukkan DVD Instalasi Mac OS X Anda
  2. Buka folder Instal DVD Mac OS X
  3. Buka folder Instalasi Opsional
  4. Buka folder Alat Xcode
  5. Buka paket XcodeTools. Ini akan memulai Pemasang Alat Xcode. Ikuti petunjuk.

Juga tidak ada salahnya untuk mendapatkan Xcode terbaru dari http://developer.apple.com/technologies/xcode.html

Pengungkapan penuh: Saya telah melakukan langkah-langkah ini. Saya cukup yakin ini mengembalikan Ruby.framework, tetapi belum mengembalikan symlink (biasanya di / usr / bin) untuk saya.


Solusi ini cukup bagus, dan meskipun saya tidak mengikutinya, akhirnya disarankan dari seorang rekan kerja. Saya akhirnya hanya menginstal ulang ruby ​​1.8.7 ke / usr / local dari sumber dan kemudian menghubungkannya ke tempat homebrew membutuhkannya. Saya hanya perlu rvm dan homebrew untuk dapat dioperasikan sampai saya mendapatkan komputer baru bulan depan. Jadi ini akan dilakukan :) Terima kasih atas tanggapan Anda!
LBRapid

1
Bisakah Anda memperbarui ini untuk Yosemite menggunakan bundel yang diinstal AppStore
rraallvv

@ rallallvv Saya tidak yakin apa yang Anda maksud. Bolehkah saya menyarankan bahwa jika langkah-langkah di atas tidak berhasil untuk Anda, maka (a) lebih spesifik, atau (b) buat jawaban baru yang menunjukkan apa yang berhasil untuk Anda, atau (c) buat pertanyaan baru, rujuk yang ini.
David J.

Saya telah membuat pertanyaan baru dengan detailnya.
rraallvv

13

Jika Anda menggunakan Pacifist maka mungkin untuk menginstal ulang Ruby.

  1. Masukkan DVD OS X Anda
  2. Jalankan Pacifist
  3. Pilih "Open Apple Install Discs"
  4. Pilih disk
  5. Cari "Ruby.framework"
  6. Klik kanan dan pilih "Instal ke Lokasi Default"

Ini akan menginstal ulang Ruby, untuk mengatur symlinks dari / usr / bin untuk menunjuknya gunakan Pacifist lagi:

  1. Cari "Isi BSD.pkg"
  2. Buka: usr -> bin
  3. Pilih tautan dan file yang Anda butuhkan
    • topi
    • tandai
    • erb
    • ferret-browser
    • permata
    • gpgen
    • irb
    • mongrel_rails
    • rel
    • menyapu
    • rb-keygen
    • rdoc
    • kain merah
    • ri
    • rubi
    • testrb
    • update_rubygems
  4. Klik kanan dan pilih "Instal ke Lokasi Default"

Secara umum jika Anda perlu mencari tahu dari mana pemasang file berasal dari sistem Anda di terminal:

$ pkgutil --file-info /usr/bin/ruby
volume: /
path: usr/bin/ruby

pkgid: com.apple.pkg.BSD
pkg-version: 10.5.0.1.1.1188305148
install-time: 1203610823
uid: 0
gid: 0
mode: 120755

Pkgid kemudian harus memberi Anda petunjuk, dan kemudian Anda menemukan installer itu dan menjalankannya lagi atau menggunakan Pacifist untuk melakukannya secara selektif.

Anda juga dapat melihat file apa yang ada dalam paket itu dengan:

$ pkgutil --files com.apple.pkg.BSD
.
Library
Library/Documentation
Library/Documentation/Commands
Library/Documentation/Commands/grep
...

Saya telah menemukan cara terbaik untuk berurusan dengan Ruby di OS X adalah membuat sistem Anda ke keadaan default dengan proses di atas. Hapus MacPort, Fink, atau versi apa pun yang telah Anda kompilasi secara manual. Instal RVM dan gunakan itu untuk mengelola menginstal versi yang lebih baru.


Ternyata saya telah menghapus sistem saya Ruby dan memiliki masalah menginstal pow ( http://pow.cx ) di mac saya karena itu. Jadi saya menginstal Pacifist dan mengikuti saran di posting ini dan kembali ke bisnis. Terima kasih!


Pacifist (Versi 3.2.17) macet ketika mencoba menginstal Ruby.framework di Yosemite
rraallvv

3

Posting lama, tapi saya baru saja beralih dari port ke homebrew jadi ...

Untuk masalah homebrew, saya mengatasinya dengan menginstal rvm dan symlinking. Jadi, jika Anda sudah menginstal rvm, Anda bisa mulai dengan mengetik:

which ruby

dengan output yang melakukan sesuatu seperti:

ln -s /Users/username/.rvm/rubies/ruby-1.9.2-p290/bin/ruby /usr/bin/ruby


-1

IMO Homebrew( http://brew.sh ) adalah manajer paket terbaik untuk OS X.

Untuk menginstal Homebrew, lakukan:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Kemudian

brew install ruby

Selesai


9
Untuk menginstal Ruby, gunakan Ruby untuk menginstalnya melalui Homebrew ...
whirlwin
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.