Sqlite3'ü Google Chrome için Mac OS X'te geri yükle


2

sqlite3Kaynaktan derlenip kurulacak kadar aptaldım /usr, varsayılan kitaplığı geçersiz kıldım.
Bu yapıldığında, Google Chrome artık bu çıktının çökmesine neden olmuyor:

Dyld Error Message:
  Library not loaded: /usr/lib/libsqlite3.dylib
  Referenced from: /System/Library/Frameworks/Security.framework/Versions/A/Security
  Reason: no suitable image found.  Did find:
    /usr/lib/libsqlite3.dylib: mach-o, but wrong architecture
    /usr/local/lib/libsqlite3.dylib: mach-o, but wrong architecture
    /usr/lib/libsqlite3.dylib: mach-o, but wrong architecture

Bir şekilde sahip olduğum sqlite3orijinal sürüme dönebilir miyim , yoksa sorunu bir şekilde düzeltebilir miyim?

Yanıtlar:


3

Ben derleyerek düzeltmek başardı sqlite3için i386ve x86_64ve yerleştirerek /usr:

./configure --prefix=/usr --disable-dependency-tracking CFLAGS="-arch i386 -arch x86_64"

1

Sistemimde libsqlite3.dylib, BaseSystem paketinin bir parçası olarak kuruldu ve 10.6.5 ve 10.6.7 paketleriyle güncellendi.

$ grep -rl libsqlite3.dylib /var/db/receipts/
/var/db/receipts/com.apple.pkg.BaseSystem.bom
/var/db/receipts/com.apple.pkg.update.os.10.6.5.patch.bom
/var/db/receipts/com.apple.pkg.update.os.10.6.7.patch.bom

Pacifist , pkgutil veya installer kullanarak sadece bu dosyaları orijinal .pkg dosyalarından çıkarabilirsiniz . Tek bir dosyayı bir .pkg dosyasından komut satırı araçlarıyla nasıl ayıklayacağım hemen belli değildi. Pacifist ile oldukça basit; Doktorlar burada .


0

/ Usr içindeki herhangi bir şeyi değiştirdiyseniz, Apple tarafından verilen kodu değiştirdiniz, böylece işletim sistemini yeniden kurmanız gerekecek. Ancak bu büyük bir chnage olduğu için ilk önce mysql'yi yedeklemenizden geri yükleyeceğim :). Aksi halde Apple'dan combo OSX sürüm güncellemesini alın . Aksi halde, OSX DVD'sine gidin, paket içeriğine bakarak birkaç dosyayı geri yükleyebilirsiniz - ancak OSX'im dağılmış ve doğru paket adına sahip değilsiniz.

Bu özel durum için, @gaearon'un dediği gibi yeniden derleyebilirsiniz, ancak doğru sürüme sahip olmanız ve Apple'ın hiçbir değişiklik yapmadığını varsaymanız gerekir.

Genelde, Apple sistem alanlarının dışına bir şey koydukları ve OSX'in tuhaflıklarıyla ilgilendikleri için bir paket yöneticisi çakışması, macport vb. Kendi kullanımınızı derlerseniz / usr / local


Standart bir kütüphane olduğundan Apple'ın değişiklik yapması için bir neden yok. Chrome ve Firefox gibi pek çok sistem dışı uygulama tarafından kullanılır. Sorun şu ki ben sadece bunu derlenmiş yerine de, sürümünde değildi x86_64onun için hem derlenmiştir olmalıydı oysa kemer i386ve x86_64ya başka yarım uygulamalar çalışmayı durdurur. Neyse ki, tüm uygulamalar yeni sürümde yeterince iyi çalışıyor; bir dahaki sefere eşyalarımı yükleyeceğim /usr/local. Notunuz için teşekkürler!
Dan

Bu durumda katılıyorum, ancak Apple Açık Kaynak yazılımında, örneğin Altyapılarını kullanmak ve sonra da yan etkileri olmak üzere değişiklikler yapabilir.
Mark
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.