2013-03-16 7 views
28

ich versuche, libxml2 von der Quelle auf meinem Mac zu bauen.installiert libtool aber libtoolize nicht gefunden

so habe ich autoconf libtool und auto mit installierten Mac-Ports

autoconf und auto scheint gut zu funktionieren wie erwartet.

ich versuche zuerst autogen.sh laufen.

libtoolize --version gibt leider

-bash: libtoolize: command not found 

ich versuche läuft (wieder)

sudo port install libtool 

---> Cleaning libtool 
---> Scanning binaries for linking errors: 100.0% 
---> No broken files found. 

ich versuche

locate libtool 

und es scheint gut zu installierenden

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/libtool 
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool 
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/share/man/man1/libtool.1 
/Applications/Xcode.app/Contents/Developer/usr/bin/libtool 
/Applications/Xcode.app/Contents/Developer/usr/share/man/man1/libtool.1 
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/cross/mipsel-linux-binutils/files/110-uclibc-libtool-conf.patch 
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/devel/libtool 
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/devel/libtool/Portfile 
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/devel/libtool/files 
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/devel/libtool/files/ltmain.m4sh-allow-clang-stdlib.diff 
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/devel/libtool-devel 
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/devel/libtool-devel/Portfile 
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/devel/openslp/files/libtool-tags.patch 
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/devel/t1lib/files/patch-libtool-tag.diff 
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/print/pdflib/files/patch-libtool.diff 
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/security/steghide/files/libtool-tag.diff 
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/www/apache2/files/libtool-tag.diff 
/usr/bin/libtool 
/usr/lib/php/build/libtool.m4 
/usr/share/apr-1/build-1/libtool 
/usr/share/man/man1/libtool.1 

Wie bekomme ich libtoolize um zu arbeiten?

Antwort

34

Normalerweise müssen Sie glibtool und glibtoolize verwenden, da libtool bereits unter OS X als Binärwerkzeug zum Erstellen dynamischer Mach-O-Bibliotheken existiert. Also, so wird es von MacPorts unter Verwendung einer Programmnamen-Transformation installiert, obwohl der Port selbst immer noch 'libtool' heißt.

Einige autogen.sh Scripts (oder deren Äquivalente) berücksichtigen die Umgebungsvariablen LIBTOOL/LIBTOOLIZE. Ich habe eine Linie in meinem eigenen autogen.sh Skripte:

case `uname` in Darwin*) glibtoolize --copy ;; 
    *) libtoolize --copy ;; esac 

Sie können oder nicht wollen die --copy Flagge.


Hinweis: Wenn Sie die Autotools mit MacPorts installiert haben, ein richtig geschrieben configure.ac mit Makefile.am Dateien nur autoreconf -fvi erfordern sollte. Es sollte wie erwartet glibtoolize usw. aufrufen. Andernfalls verteilen einige Pakete ein autogen.sh oder ähnliches Skript.

+0

wo befindet sich autogen.sh normalerweise? – Erik

+0

@Erik - normalerweise im obersten Verzeichnis und in der Distribution enthalten, indem Sie 'EXTRA_DIST = autogen.sh' in der obersten Ebene' Makefile.am' hinzufügen. Manchmal hat es einen Namen wie 'bootstrap.sh'. Oft sind Entwickler mit den Standardeinstellungen von 'autoreconf' zufrieden. –

+2

einfach ersetzen 'libtoolize' mit' glibtoolize' arbeitete für mich – domoarrigato

18

Ich hoffe, meine Antwort ist nicht zu naiv. Ich bin ein Neuling für OSX.

brew install libtool hat ein ähnliches Problem für mich gelöst.

+1

Die Formel (für diejenigen, die nicht Homebrew verwenden möchten, aber nichts gegen einige Zeiger) ist [hier] (https://github.com/Homebrew/homebrew/blob/master/Bibliothek/Formel/libtool.rb) – iain

+3

Wenn du andere Tools wie 'imagemagick' installiert hast, kannst du den brew caveat entdecken: ' Um Konflikte mit Apples eigenem Libtool zu vermeiden, haben wir ein "g" vorangestellt, also hast du stattdessen: '** glibtool * * 'und' ** glibtoolize ** – pzrq

+0

Es gibt ein Problem bei der Installation von libtool mit brew: Sie erhalten möglicherweise einen Fehler wie "/ usr/local/bin/glibtoolize: Zeile 406: /usr/local/Library/ENV/4.3/sed : Datei oder Verzeichnis existiert nicht". Die Lösung, die für mich funktionierte, war 'brew unlink libtool' (dies ist möglicherweise nicht notwendig) und dann 'brew uninstall libtool && brew install libtool' (ebotmanns Kommentar unter https://github.com/Homebrew/legacy-homebrew/issues/ 43874). –