Macport'lar tüm bağlantı noktalarını zorla etkinleştirir


0

SciTE'ı yüklemeye çalışırken

sudo port install scite

liman durur

Hata: org.macports.activate port gettext için döndü: Resim hatası: / opt / local / bin / autopoint zaten var ve kayıtlı bir porta ait değil. Bağlantı noktası gettext etkinleştirilemedi. Aktivasyonu zorlamak için 'port -f activate gettext ' komutunu kullanın .

Ben çalıştırırsanız ancak sudo port -f activate gettextve yükleme yeniden denemek scite, ben aynı hata mesajı, bu kez ile bitirmek /opt/local/lib/libffi.6.dylib ve libffi vesaire vesaire ve ...

Macports'a, aslında istediğim paketin kurulumunu manuel olarak tekrar çalıştırmak zorunda kalmadan ve her bir aktivasyon komutunu kopyala yapıştırmak zorunda kalmadan, SciTE kurulumunu tamamlamanın yolunda duran tüm portları etkinleştirmeye zorlamasını nasıl sağlayabilirim?


1
Asıl soru, mac'unuzu yedeklerseniz ve ardından sorun dosyasını silerseniz ne olur /opt/local/bin/autopoint ?
bmike

Macport'ları yüklediğinizden beri OSX'i yükselttiniz mi, yoksa bir yedeklemeyi geri yükleyip / seçtiniz mi?
Mark

@bmike her seferinde farklı bir dosya, şimdi daha net hale getirdim.
qubodup

@Mark Tüm o / opt / içeriğin oraya nasıl ulaştığını hatırlayamıyorum. Daha önce monte edilmiş demleme vardı. Yine de daha muhtemel: belki de farkında olmadığım Macport'lardan dışa aktarılan bir veya daha fazla paket kurarak.
qubodup

Ah canım - iflas ilan etmek / tercih etmek ve silmek / kaldırmak gerekebilir. Homebrew'de daha çok bilgiliyim, bu yüzden burada size özellikler hakkında tavsiyede bulunamıyorum. Umarım bir bağlantı noktası kullanıcısı, bildirdiğiniz gibi bozuk bir kurulumun nasıl kaldırılacağını veya onarılacağını gösterebilir.
bmike

Yanıtlar:


2

Aktivasyon işlemini otomatize ederek istenilen portu kurmayı başardım. Bazı kütüphane sürüm sorunları nedeniyle uygulama çalıştırılamıyor ve bunları düzeltemiyorum ama bu başka bir cevap ya da başka bir soru için bir hikaye.

  1. Bağlantı noktasını sürekli olarak yüklemeye çalışan ve otomatik olarak engelleyen keşfedilen bağlantı noktasını zorla etkinleştiren bir komut dosyası oluşturun. Kopyala, aşağıdakileri bir dosyaya yapıştır ve onu çağırport-instact.sh

    if [ "$EUID" -ne 0 ]
      then echo "Please run as root"
      exit
    fi
    target="$1"
    while [ 1 ]
    do
        echo trying to install "$target"
        if [[ $(port installed "$target" | grep "$target") ]]; then echo "$target" present; break; fi
        line=`port install "$target" 2>&1 > /dev/tty | grep "port -f activate"`
        package=$(echo $line | sed -e "s/^.*port -f activate //" -e "s/. .*//")
        if [ "$package" = "$oldpackage" ]; then echo double \""$package"\"; break; fi
        oldpackage="$package"
        echo activating "$package"
        port -f activate "$package"
    done
  2. Dosyayı çalıştırılabilir hale getir chmod +x port-instact.sh

  3. Kök olarak çalıştır sudo ./port-instact.sh sciteve bekle


Vay canına, bu MacPorts'ta normal bir seçenek değil. Teşekkürler!
sudo

Tüm "Devam mı? [Y / n]: Y" 'ye yönlendirilebilirse daha iyi olurdu yes.
Sophia Feng

0

Her şeyi Macport'u silmek ve yeniden yüklemek normalde port yüklemenizi sağlar.

Macports kılavuzundan elaborate rm komutunu kullanın (kaldırma) :

sudo rm -rf \
        /opt/local \
        /Applications/DarwinPorts \
        /Applications/MacPorts \
        /Library/LaunchDaemons/org.macports.* \
        /Library/Receipts/DarwinPorts*.pkg \
        /Library/Receipts/MacPorts*.pkg \
        /Library/StartupItems/DarwinPortsStartup \
        /Library/Tcl/darwinports1.0 \
        /Library/Tcl/macports1.0 \
        ~/.macports

Öneri için Mark'a teşekkürler .

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.