web-dev-qa-db-ja.com

libtoolをインストールしましたが、libtoolizeが見つかりません

macのソースからlibxml2をビルドしようとしています。

だから私はMACポートを使用してインストールされたautoconf libtoolとautomakeを持っています

autoconfとautomakeは期待どおりに機能しているようです。

最初にautogen.shを実行してみます。

libtoolize --versionは残念ながら、

-bash: libtoolize: command not found

(もう一度)実行してみます

Sudo port install libtool

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

やってみます

locate libtool

そして、それはうまくインストールされているようです

/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

libtoolizeを機能させるにはどうすればよいですか?

33
tzl

glibtoolはMach-Oダイナミックライブラリを作成するためのバイナリツールとしてOS Xに既に存在するため、通常はglibtoolizeおよびlibtoolを使用する必要があります。したがって、ポート自体の名前は「libtool」のままですが、MacPortsはプログラム名変換を使用してそれをインストールする方法です。

いくつかのautogen.shスクリプト(またはそれに相当するもの)は、LIBTOOL/LIBTOOLIZE環境変数を尊重します。自分の行にautogen.shスクリプト:

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

--copyフラグ。


注:MacPortsを使用してオートツールをインストールした場合、正しく書かれたconfigure.ac with Makefile.amファイルに必要なのはautoreconf -fvi。予想どおり、glibtoolizeなどを呼び出す必要があります。それ以外の場合、一部のパッケージはautogen.shまたは同様のスクリプト。

38
Brett Hale

私の答えが素朴すぎないことを願っています。私はOSXの初心者です。

brew libtoolをインストールすると同様の問題が解決しました。

24
natersoz

Brewの代替手段はmacportsを使用することです。例えば:

$ port info libtool
libtool @2.4.6_5 (devel, sysutils)
Variants:             universal

Description:          GNU libtool is a generic library support script. Libtool hides the complexity of using shared libraries behind a consistent, portable interface.
Homepage:             https://www.gnu.org/software/libtool

Build Dependencies:   xattr
Platforms:            darwin, freebsd
License:              libtool
Maintainers:          Email: [email protected], GitHub: larryv

次に、Brewと同様に、次のことを行います。

$ Sudo port install libtool
Password:
--->  Fetching archive for libtool
--->  Attempting to fetch libtool-2.4.6_5.darwin_15.x86_64.tbz2 from https://packages.macports.org/libtool
--->  Attempting to fetch libtool-2.4.6_5.darwin_15.x86_64.tbz2.rmd160 from https://packages.macports.org/libtool
--->  Installing libtool @2.4.6_5
--->  Activating libtool @2.4.6_5
--->  Cleaning libtool
--->  Updating database of binaries
--->  Updating database of C++ stdlib usage
--->  Scanning binaries for linking errors
--->  No broken files found.                             
--->  No broken ports found.

次に、それがどこにあるかを確認できます...ところで、glibtoolizeをlibtoolizeにソフトリンクできます。私のニーズのためにどちらかは大丈夫だった

$ which glibtoolize
/opt/local/bin/glibtoolize
0
ruoho ruotsi