English 中文(简体)
Install git-core +svn fails with MacPort
原标题:

I tried several tricks, clean all, and no luck. Any tips?

sudo port install git-core +svn +doc

--->  Computing dependencies for git-core
--->  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" && /usr/bin/make -j2 all " returned error 2

Command output: /bin/sh ./libtool --mode=compile /usr/bin/gcc-4.2 -c -O2 -arch x86_64  -I../dist/.. -I/opt/local/include -I/System/Library/Frameworks/JavaVM.framework/Versions/Current/Headers ../dist/../db_dump185/db_dump185.c
/bin/sh ./libtool --mode=compile /usr/bin/gcc-4.2 -c -I. -I../dist/.. -I/opt/local/include -I/System/Library/Frameworks/JavaVM.framework/Versions/Current/Headers -O2 -arch x86_64  ../dist/../common/util_sig.c
 /usr/bin/gcc-4.2 -c -O2 -arch x86_64 -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
 /usr/bin/gcc-4.2 -c -I. -I../dist/.. -I/opt/local/include -I/System/Library/Frameworks/JavaVM.framework/Versions/Current/Headers -O2 -arch x86_64 ../dist/../common/util_sig.c  -fno-common -DPIC -o .libs/util_sig.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:  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:  DB  has no member named  seq 
../dist/../db_dump185/db_dump185.c: In function  db_hash :
../dist/../db_dump185/db_dump185.c:261: error:  DB  has no member named  internal 
../dist/../db_dump185/db_dump185.c:263: error:  DB  has no member named  internal 
../dist/../db_dump185/db_dump185.c: In function  db_btree :
../dist/../db_dump185/db_dump185.c:288: error:  DB  has no member named  internal 
make: *** [db_dump185.lo] Error 1
make: *** Waiting for unfinished jobs....
 /usr/bin/gcc-4.2 -c -I. -I../dist/.. -I/opt/local/include -I/System/Library/Frameworks/JavaVM.framework/Versions/Current/Headers -O2 -arch x86_64 ../dist/../common/util_sig.c -o util_sig.o >/dev/null 2>&1


Error: The following dependencies failed to build: p5-svn-simple subversion-perlbindings apr-util db46 cyrus-sasl2 gettext neon serf subversion p5-term-readkey rsync popt
Error: Status 1 encountered during processing.
问题回答

It has been suggested (e.g. here and here) that moving aside /usr/local and then doing port clean db46 and then installing will fix things.

This didn t work for me. However, this did:

sudo mv /usr/local /usr/local.hold
# using -f to ignore dependencies, since we re about to re-install it
sudo port -f uninstall db46
sudo port clean db46
# See note below, you may actually want to install something different
# (like your git-core install)
sudo port install db46
sudo mv /usr/local.hold /usr/local

I don t actually know if the /usr/local steps were relevant in my case -- I suspect not, as I don t have db46 installed there. I think it was just that a previous version of db46 was causing problems.

This strikes me as being a bug in db46 and/or its port definition or configure script or something, which causes it to reference a header file that s installed on the system somewhere instead of a version of the same header file from the build tree. I haven t dug into it to find out, though.

Also note: I was actually building this for another port, and it wanted the +universal variant (not sure why, but whatever) -- so my port install step above was kinda useless, because when I did a port install on the other package I wanted, it re-did it with +universal, and had the same problem again! Sigh. Still, doing a sudo port -f uninstall db46 and sudo port clean db46 again and then doing my main install made everything work.

Did you upgrade to SNOW LEOPARD (or any other Mac OS X version) recently?

Follow this guide and your problems will go away.





相关问题
Best practices for Subversion and Visual Studio projects

I ve recently started working on various C# projects in Visual Studio as part of a plan for a large scale system that will be used to replace our current system that s built from a cobbling-together ...

Changing username in SVN+SSH URI on the fly in working copy

I am using SVN+SSH to check out a working copy of repository from an SVN server on which all developers are members of a developer group and have full read/write permissions on the repository ...

ASP.NET MVC: How should it work with subversion?

So, I have an asp.net mvc app that is being worked on by multiple developers in differing capacities. This is our first time working on a mvc app and my first time working with .NET. Our app does not ...

How to search for file in subversion server?

Is there a way to search for a file in a subversion repository? Something similar to Unix find command, with which I can find the location of a file in a repository. I know there is svn list, but ...

热门标签