install git-core on MacPorts

git-coreをMacPortsで入れようとしたけど、途中でエラーになる。

(10288)> sudo port install git-core +svn +bash_completion +gitweb
      • > Building db46
Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_databases_db46/work/db-4.6.21/build_unix" && make all " returned error 2 Command output: /bin/sh ./libtool --mode=compile /usr/bin/gcc-4.0 -c -O2 -I../dist/.. -I/opt/local/include -I/System/Library/Frameworks/JavaVM.framework/Versions/Current/Headers ../dist/../db_dump185/db_dump185.c /usr/bin/gcc-4.0 -c -O2 -I../dist/.. -I/opt/local/include -I/System/Library/Frameworks/JavaVM.framework/Versions/Current/Headers ../dist/../db_dump185/db_dump185.c -fno-common -DPIC -o .libs/db_dump185.o ../dist/../db_dump185/db_dump185.c: In function 'main': ../dist/../db_dump185/db_dump185.c:211: warning: assignment makes pointer from integer without a cast ../dist/../db_dump185/db_dump185.c:213: warning: assignment makes pointer from integer without a cast ../dist/../db_dump185/db_dump185.c:228: error: 'struct __db' has no member named 'seq' ../dist/../db_dump185/db_dump185.c:228: error: 'R_NEXT' undeclared (first use in this function) ../dist/../db_dump185/db_dump185.c:228: error: (Each undeclared identifier is reported only once ../dist/../db_dump185/db_dump185.c:228: error: for each function it appears in.) ../dist/../db_dump185/db_dump185.c:233: error: 'struct __db' has no member named 'seq' ../dist/../db_dump185/db_dump185.c: In function 'db_hash': ../dist/../db_dump185/db_dump185.c:261: error: 'struct __db' has no member named 'internal' ../dist/../db_dump185/db_dump185.c:263: error: 'struct __db' has no member named 'internal' ../dist/../db_dump185/db_dump185.c: In function 'db_btree': ../dist/../db_dump185/db_dump185.c:288: error: 'struct __db' has no member named 'internal' make: *** [db_dump185.lo] Error 1 Error: The following dependencies failed to build: p5-svn-simple subversion-perlbindings db46 p5-term-readkey rsync popt Error: Status 1 encountered during processing.

db46っていうのはBerkeley DBのことで、昔port install subversionしたときに+no_bdbオプションつけて入れたくらいだからきっといらない。

以下によればdb46を+universal で入れれば入るっぽいけど、要らないものは要らないので依存関係調べてBerkeleyDBなしで入れる方法を調べる。

http://d.hatena.ne.jp/rabbit2go/20081229/1230558551
http://alistairisrael.wordpress.com/2007/09/18/building-db44-using-macports/

(10308)> port info git-core +svn
git-core @1.6.2.2 (devel)
Variants:    bash_completion, doc, gitweb, +svn

Git is a fast, scalable, distributed open source version control system focusing
on speed and efficiency.
Homepage:    http://git.or.cz/

Library Dependencies: curl, zlib, openssl, expat, libiconv
Runtime Dependencies: rsync, perl5, p5-error, subversion, p5-libwww-perl,
                      p5-svn-simple, p5-term-readkey
Platforms:            darwin
Maintainers:          bryan@larsen.st maccheck@gmail.com
                      openmaintainer@macports.org

(10309)> port info p5-svn-simple
p5-svn-simple @0.27 (perl)
Variants:    universal

This is a Perl extension for driving svn delta editors (used by svk).
Homepage:    http://search.cpan.org/~clkao/

Library Dependencies: perl5, subversion-perlbindings
Platforms:            darwin
Maintainers:          dluke@geeklair.net

(10310)> port info subversion-perlbindings
subversion-perlbindings @1.6.1 (devel, perl)
Variants:    darwin_7, no_bdb, no_neon

Subversion is a version control system designed to be as similar to cvs(1) as
possible, while fixing many outstanding problems with cvs(1). The perl bindings
provide access to subversion API from perl.
Homepage:    http://subversion.tigris.org/

Library Dependencies: expat, neon, apr, apr-util, db46, subversion, perl5,
                      gettext, libiconv, serf, cyrus-sasl2, sqlite3
Platforms:            darwin
Maintainers:          dluke@geeklair.net

いたあ!subversion-perlbindingsのvariantsにno_bdbがあるので、これでインストール

(10311)> sudo port install subversion-perlbindings +no_bdb
Password:

あらためてgit-coreをインストール

(10602)> sudo port install git-core +svn +bash_completion +gitweb
      • > Configuring p5-svn-simple
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-svn-simple/work/SVN-Simple-0.27" && /opt/local/bin/perl Makefile.PL INSTALLDIRS=vendor " returned error 133 Command output: dyld: lazy symbol binding failed: Symbol not found: _Perl_Gthr_key_ptr Referenced from: /usr/lib/libsvn_swig_perl-1.0.dylib Expected in: dynamic lookup dyld: Symbol not found: _Perl_Gthr_key_ptr Referenced from: /usr/lib/libsvn_swig_perl-1.0.dylib Expected in: dynamic lookup sh: line 1: 385 Trace/BPT trap /opt/local/bin/perl Makefile.PL INSTALLDIRS=vendor Error: The following dependencies failed to build: p5-svn-simple p5-term-readkey rsync popt Error: Status 1 encountered during processing.

なんじゃらほい・・・
/usr/lib じゃなくって/opt/local/libを見てくれれば話は済むような気がするが、ここは一旦引いて出直す

(10604)> sudo port install git-core +bash_completion +gitweb
  1. svnを取った。成功したものの敗北感。git-svnは必要な気がするんだが・・・