2010-03-23 5 views
6

Diğer bir platformdan başka bir platformdan daha fazla Snow Leopard üzerinde çalışacak standart Unix şeyleri almamda daha fazla sorun var gibi görünüyor - son birkaç gündür, ImageMagick'i Snow'da çalıştırmaya çalışıyordum. Leopar.ImageMagick. Derlemek ve çalıştırmak için herhangi bir yolu var mı?

en açık yolu, Mac Limanlar, başarısız:

tppllc-Mac-Pro:ImageMagick-sl swirsky$ sudo port install imagemagick 
---> Computing dependencies for p5-locale-gettext 
---> Configuring p5-locale-gettext 
Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_perl_p5-locale-gettext/work/gettext-1.05" && /opt/local/bin/perl Makefile.PL INSTALLDIRS=vendor " returned error 2 
Command output: checking for gettext... no 
checking for gettext in -I/opt/local/include -arch i386 -L/opt/local/lib -lintl...gettext function not found. Please install libintl at Makefile.PL line 18. 
no 

Error: Unable to upgrade port: 1 
Error: Unable to execute port: upgrade xorg-libXt failed 
Before reporting a bug, first run the command again with the -d flag to get complete output. 
tppllc-Mac-Pro:ImageMagick-sl swirsky$ 

benim libintl bir "gettext" işlevine sahip değildir neden endam başka bir iki gün geçirmek isteyen değil, ben başka bir yol denedi: komut burada sözü: http://github.com/masterkain/ImageMagick-sl

Bu komut indirme ve bağımsız MacPorts bir ImageMagic sorunları yükler

tppllc-Mac-Pro:ImageMagick-sl swirsky$ /usr/local/bin/convert 
dyld: Library not loaded: /opt/local/lib/libiconv.2.dylib 
    Referenced from: /opt/local/lib/libfontconfig.1.dylib 
    Reason: Incompatible library version: libfontconfig.1.dylib requires version 8.0.0 or later, but libiconv.2.dylib provides version 7.0.0 
Trace/BPT trap 

her şeyi indirir ve iyi derler, ancak çalıştırmayı denediğimde, yukarıdaki iletiyle başarısız olur.

Şimdi makinemde daha yeni bir libiconv almaya çalışırken ImageMagick'ten iki adım uzaktayım.

En son libiconv'u indirdim, derledim ve oluşturdum. I/opt/local/lib sonuçlanan kütüphanesi yaptı ve hala aynı hata mesajı alıyorum:

tppllc-Mac-Pro:.libs swirsky$ sudo mv libiconv.2.dylib /opt/local/lib/libiconv.2.dylib 
tppllc-Mac-Pro:.libs swirsky$ convert 
dyld: Library not loaded: /opt/local/lib/libiconv.2.dylib 
    Referenced from: /opt/local/lib/libfontconfig.1.dylib 
    Reason: Incompatible library version: libfontconfig.1.dylib requires version 8.0.0 or later, but libiconv.2.dylib provides version 7.0.0 
Trace/BPT trap 

Şimdi burada ilginç bir şey. Hata mesajı, /opt/local/lib/libiconv.2.dylib adresinde olduğunu gösterir. iyi ölçmek için, bu dizin dinamik kütüphaneler için biri olduğundan emin olmak için DYLD_LIBRARY_PATH ayarlayın

tppllc-Mac-Pro:.libs swirsky$ otool -L /opt/local/lib/libiconv.2.dylib 
/opt/local/lib/libiconv.2.dylib: 
    /usr/local/lib/libiconv.2.dylib (compatibility version 8.0.0, current version 8.0.0) 
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.0.0) 
tppllc-Mac-Pro:.libs swirsky$ 

Ve:

otools -L bu 8.0.0 uygulamak olmadığını gösterir.

Her ne kadar 8.0.0 sağlayan bir kütüphanem olsa da, 7.0.0 olarak görülüyor! Bunun neden olabileceği hakkında bir fikrin var mı?

İşte sorum şu: ImageMagick'in OSX Snow Leopard'da çalışmasını sağlamak mümkün mü? Bu konuda endişelenmenize gerek kalmayacak şekilde statik kütüphaneleri olan herhangi bir ikili dağıtım var mıdır? Bu sorun hakkında endişelenmenize gerek yok/

cevap

0

Benim google birkaç isabeti gösterdi ve ilk veya ikincisi link to the binary idi.

+0

teşekkürler! Bu sayfayı gördüm, ancak önce MacPorts'u kullanmasını önerdiği için bunu kaçırdım. İkili dağıtım işe yarıyor gibi görünüyor. (Kütüphaneler statik olarak birbirine bağlı olanı tercih etsem de. DYLD_LIBRARY_PATH ortam değişkenini değiştirmek diğer şeyleri bozuyor ...) –

+5

ImageMagick üyeleri, çalışma ikililerini ne yazık ki SİLDİ ve web sitelerinde sadece Lion'lı bir ikili yayınladılar. . Bu cevap artık doğru değil: (. – Adam

0

Sonunda, "macports" yüklememi imgelemeyi kurmak ve çalıştırmak için yeterli tutarlılığa kavuştum. Dosyaların nerede yaşadığı/opt/local/directores 'i el ile silmek ve diğer bazı bağımlılıkları temizlemek zorunda kaldım.

+0

Hayır! Çok erken konuştum. Derler ve kurar, ama kaçmaz. Her işlem "Abort Trap" içinde ölür. –

0

Dinamik bağlayıcı sistemin libiconv.2.dylib (7.0.0 uyumluluk sürümüne sahip) sistemde çekiyor gibi görünüyor. Yapım sürecinizin tamamını görmeden, bunun neden böyle olduğunu bilmek zor, ama ben senin libiconv yapıtından şüpheliyim; Aşağıdaki başarısızlıkla dikkat:

tppllc-Mac-Pro:.libs swirsky$ otool -L /opt/local/lib/libiconv.2.dylib 
/opt/local/lib/libiconv.2.dylib: 
    /usr/local/lib/libiconv.2.dylib (compatibility version 8.0.0, current version 8.0.0) 
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.0.0) 

senin libiconv.2.dylib onun yolunu yüklemek zannediyor /usr/local/lib değil /opt/local/lib olduğunu. Bu muhtemelen dinamik bağlayıcıyı bulamıyor; /usr/local/lib'da arıyor, bulamıyor ve /usr/lib sistem kütüphanesine geri dönüyor.libiconv.2.dylib için yükleme yolunu ayarlamaya çalışın; böylece, yükleme komutları, bağlayıcının /opt/local/lib içinde aramasını söyler ve bu sorunu çözebilir.

1

Birden çok durumda bu tam kitaplıktaki bu tam hatayı gördüm. Her durumda, kullandıkları kişi ya da betiğin, DYLD_LIBRARY_PATH değişkenini ayarladığı bir durumdu.

Belirtilen açık kitaplıkların o yoldakiler ile yüklenmesini geçersiz kıldığından, bu değişkenin ayarlanmadığından emin olun.

DYLD_ * ayarlanması gerekiyorsa, daha aklı başında DYLD_FALLBACK_LIBRARY_PATH kullanın. Öncelikle açık şekilde bağlanmış kütüphaneleri yüklemeyi dener, ardından bildirilen kullanıcılara geri dönüş yapar.

İlk derlemenizde macdalarda gettext kitaplığı bulamadığını fark ettim. Bu yüzden bunların yüklü olduğundan emin olun.

+0

bu DYLD_FALLBACK_LIBRARY_PATH. –

3

Ayrıca ImageMagick komut burada yer yüklemeye çalışabilirler: http://github.com/masterkain/ImageMagick-sl

O bana çok yardımcı oldu. Komut dosyası içindeki bazı kitaplık sürümlerini değiştirmek için gerekli olabilir.

0

Aynı sorunu yaşadım ve Macports kullanarak libiconv'u kaldırıp yeniden yükleyerek çözdüm. Sonra her şey iyi çalışıyor (ayrıca DYLD_LIBRARY_PATH değişkenimde ilk giriş olarak/opt/local/lib/var)

0

Strange. Macport'larımdan oldukça memnunum - ve her şey hatasız derlenmiş. Sadece tavsiye edebilirim - Macports kullanın. Bu benim için çalıştı (aktif) 6.6.9-9_0 + graphviz + HDRI + jpeg2 + mpeg + perl + q16 + rsvg + wmf

5

@
ImageMagick:

sudo brew install imagemagick