Установить git-core + svn не удается с MacPort - PullRequest
1 голос
/ 01 декабря 2009

Я перепробовал несколько трюков, очистил все, и не повезло. Любые советы?

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.

Ответы [ 2 ]

2 голосов
/ 15 февраля 2011

Было высказано предположение (например, здесь и здесь ), что перемещение в сторону / usr / local и затем очистка порта db46 с последующей установкой все исправит.

Это не сработало для меня. Тем не менее, это сделал:

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

На самом деле я не знаю, были ли шаги / usr / local релевантными в моем случае - я подозреваю, что нет, так как там не установлен db46. Я думаю, что просто предыдущая версия db46 вызывала проблемы.

Мне кажется, что это ошибка в db46 и / или его определении порта или скрипте конфигурирования или что-то вроде этого, что заставляет его ссылаться на файл заголовка, который установлен где-то в системе, а не на версию того же файла заголовка из сборки дерево. Я не копался в этом, чтобы выяснить это.

Также обратите внимание: я на самом деле собирал это для другого порта, и он хотел + универсальный вариант (не уверен почему, но как угодно) - так что мой шаг установки порта был довольно бесполезен, потому что когда я делал установку порта на другой пакет, который я хотел, он сделал это снова с + universal, и у снова возникла та же проблема ! Вздох. Тем не менее, повторное выполнение sudo port -f uninstall db46 и sudo port clean db46, а затем выполнение основной установки заставили все работать.

0 голосов
/ 01 декабря 2009

Вы недавно обновились до SNOW LEOPARD (или любой другой версии Mac OS X)?

Следуйте этому руководству, и ваши проблемы исчезнут.

...