Ich hatte einige Probleme mit ImageMagick und es wurde mir mitgeteilt, dass Ubuntus Standard-ImageMagick-Paket eine alte Version ist und ich ein Upgrade durchführen sollte, um meine Probleme zu beheben.
Wie kann ich das machen? Ich habe die neueste Ubuntu-Version (12.10). Synaptic zeigt mich 8:6.7.7.10-2ubuntu4
als die neueste Version von IM. Das heißt, meine IM-Version ist 6.7.7.10
( convert --version
gibt dasselbe aus). IM bietet selbst keine Deb-Binärdateien an . Debian hat etwas Neues , aber in einigen Test- / Experimentierzweigen, wenn ich es gut verstehe. Ich habe IM auf Launchpad gefunden , aber es gibt keine Anweisungen, wie ich dies zu meinen Quellen hinzufügen kann. Es scheint, dass dies keine der üblichen PPAs ist, die ich bei der Suche nach der neuesten / Beta-Software erreiche. Ich weiß nicht, wie ich damit umgehen soll.
Gibt es eine Möglichkeit, ein Paket zu kennzeichnen, das aus einigen Spitzenquellen entnommen werden soll, und den Rest meines Systems aus Standardquellen zu entnehmen? Es wäre wahrscheinlich das Beste, auf die letzte stabile Version von IM ( 6.8
) zu aktualisieren , aber das ist wahrscheinlich Sci-Fi, da es nicht einmal in Debian ist. Allerdings brauche ich zumindest 6.7.9
.
Hinweis: Ich möchte die Kompilierung aus dem Quellcode vermeiden. Ich hasse es, etwas installiert zu haben und nicht in der Lage zu sein, es einfach mit apt-get
oder Synaptic zu manipulieren . Darüber hinaus gibt es keine Updates für kompilierte Programme. Immer wenn ich kompiliere, habe ich das Gefühl, dass ich gegen das System verstoße, indem ich Klebstoff, Drähte und Klebeband benutze. Nein, ich möchte es nicht sicher kompilieren.
quelle
imagemagick
Mit dieser Methode können Sie Ihr vorhandenes Paket und seine Abhängigkeiten beibehalten. Sie können mit configure ausführen--prefix=/opt
, kompilieren Sie das Programm, und installieren Sie dann zu/opt
mitcheckinstall
, so können Sie die kompilierte Version als Paket über verwaltenapt-get
. Wenn Sie die neue Version verwenden möchten, müssen Sie angeben,/opt/bin/convert
wann Sie ausgeführt werdenconvert
, es sei denn, Sie erstellen einige Symlinks. In beidencheckinstall
. Wenn ich es richtig verstehe, sollte es eine kompilierte Version des Programms auf meinem System installieren und es dann als Paket in Synaptic oder so darstellen, was bedeutet, dass ich es später sicher und einfach entfernen kann. Das wäre toll!Antworten:
Bitte beachten Sie: Obwohl Honza anfangs sagte, dass er nicht kompilieren möchte, haben wir
checkinstall
in den obigen Kommentaren die Installation des kompilierten Pakets mit beschrieben. Das war genau das, was Honza wollte, da mit installierte Programmecheckinstall
wie jedes andere Paket mit dem Paketmanager entfernt werden können.Da wir die Installation für die
/opt
Verwendungcheckinstall
nach dem Build durchführen, können wir das Originalpaketimagemagick
an Ort und Stelle belassen. (Installieren Sie die Repository-Version, falls diese noch nicht installiert ist.) Die Abhängigkeiten können installiert bleiben und unterscheiden sich in der neuesten Version von nichtimagemagick
. Als erstes müssen wir die Build-Abhängigkeiten und einige andere Tools installieren:Laden Sie den Quellcode von der offiziellen Website herunter
cd
und extrahieren Sie ihn mithilfe des Terminals in das Quellpaket:Wechseln Sie nun mit in diesen Ordner
Wenn Sie nun die verfügbaren Optionen für den Build herausfinden möchten, führen Sie aus
Meist ist jedoch bereits alles eingestellt
enabled
, sodass außer dem Notwendigen kaum etwas weiter spezifiziert werden muss--prefix
. Sie könnten andere Standorte verwenden, aber wir werden/opt
hier verwenden. Führen Sie nunconfigure
undmake
:Als letztes müssen Sie
checkinstall
das Paket installieren. Stellen Sie sicher, dass Sie sich in demImagemagick-6.8.3-9
Ordner befinden und führen Sie ausSie können natürlich
checkinstall
mit Parametern wie ausführen--pkgversion=
oder sie nach dem Ausführen auswählensudo checkinstall
, aber alle Standardeinstellungen sind hier in Ordnung. Der zu erstellende Paketname wird aufgerufenimagemagick-6.8.3-9
und in installiert/opt/imagemagick-6.8
.Sie können das Paket nun auch
Synaptic
wie jedes andere Paket anzeigen und verwalten. Das Entfernen des Pakets führt nicht zu Problemen mit anderen Paketen.Wenn Sie Ihre neuen Versionen ausführen möchten, müssen Sie
/opt/imagemagick-6.8/convert
beispielsweise verwenden, wie/opt
es nicht in ist$PATH
, und wenn Sie nur ausführen ,convert
wird die Repoversion aufgerufen. Sie könnten einige Symlinks erstellen, wenn Sie immer die/opt
Version der Programme ausführen möchten.Bitte beachten Sie, dass Honza dies wollte, obwohl er anfangs nicht bereit war zu kompilieren, bis darüber gesprochen
checkinstall
wurde.quelle
convert
ist/opt/imagemagick-6.x/bin/convert
. Zumindest ist es so für die 6.9.1 Version, die ich jetzt installiert habe. Dein Weg fehlt/bin/
.Unable to find a source package for imagemagick
. Ich konnte Abhängigkeiten so installieren:sudo apt-get install imagemagick libmagick++-dev
wie hier beschrieben .Unable to find a source package for imagemagick
besteht darin, dass Sie deb-src-Quellen in /etc/apt/source.list auskommentieren müssen, damit das Paket gefunden wird.ldconfig
nachher tun musstecheckinstall
, um die Bindungen zu aktualisieren.