Я пытаюсь установить "ipe" на Snow Leopard через macports. Я запускаю команду "sudo port install ipe". Это вывод:

Chriss-MacBook:macports chris$ sudo port install ipe
Warning: No port p5.12-locale-gettext found in the index.
--->  Computing dependencies for help2man
Error: Dependency 'p5.12-locale-gettext' not found.
Error: Unable to upgrade port: 1
Error: Unable to execute port: upgrade pkgconfig failed
To report a bug, see <http://guide.macports.org/#project.tickets>

Что дает? Как я могу это исправить?

редактировать после обновления, это вывод. Все еще терпит неудачу мгновенно.

--->  Computing dependencies for p5.12-locale-gettext
--->  Fetching archive for p5.12-locale-gettext
--->  Attempting to fetch p5.12-locale-gettext-1.50.0_6.darwin_10.x86_64.tbz2 from http://packages.macports.org/p5.12-locale-gettext
--->  Attempting to fetch p5.12-locale-gettext-1.50.0_6.darwin_10.x86_64.tbz2.rmd160 from http://packages.macports.org/p5.12-locale-gettext
--->  Installing p5.12-locale-gettext @1.50.0_6
--->  Activating p5.12-locale-gettext @1.50.0_6
Error: Target org.macports.deactivate returned: Active version of p5-locale-gettext is not 1.50.0_3 but 1.05_3.
Log for p5-locale-gettext is at: /opt/local/var/macports/logs/_opt_local_var_macports_registry_portfiles_p5-locale-gettext_1.05_3/p5-locale-gettext/main.log
Warning: Failed to execute portfile from registry for p5-locale-gettext @1.05_3
--->  Deactivating p5-locale-gettext @1.05_3
--->  Cleaning p5.12-locale-gettext
Portfile changed since last build; discarding previous state.
--->  Computing dependencies for help2man
--->  Fetching archive for help2man
--->  Attempting to fetch help2man-1.40.4_1.darwin_10.x86_64.tbz2 from http://packages.macports.org/help2man
--->  Attempting to fetch help2man-1.40.4_1.darwin_10.x86_64.tbz2.rmd160 from http://packages.macports.org/help2man
--->  Installing help2man @1.40.4_1
--->  Cleaning help2man
--->  Computing dependencies for help2man
--->  Deactivating help2man @1.38.2_0
--->  Cleaning help2man
--->  Activating help2man @1.40.4_1
--->  Cleaning help2man
--->  Computing dependencies for autoconf
--->  Dependencies to be installed: perl5
--->  Activating perl5 @5.12.3_1+perl5_12
Error: Target org.macports.activate returned: Image error: /opt/local/bin/a2p is being used by the active perl5.8 port.  Please deactivate this port first, or use 'port -f activate perl5' to force the activation.
Error: Failed to install perl5
Log for perl5 is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_perl5/perl5/main.log
Error: The following dependencies were not installed: perl5
Error: Unable to upgrade port: 1
Error: Unable to execute port: upgrade pkgconfig failed

до сих пор не решена

4 ответа4

2

была такая же проблема. Я последовал совету Йенса и сделал «обновление порта устаревшим», но недостающие зависимости все еще будут существовать. Еще некоторые исследования помогли, я нашел это полезным:

http://comments.gmane.org/gmane.os.apple.macports.tickets/11599

где сказано:

Сообщения об отсутствующих p5. * - портах почти всегда вызваны наличием MacPorts 1.x, однократным запуском selfupdate для обновления до MacPorts 2.x и неправильной перестройкой индекса. Решение этой проблемы - запустить самообновление во второй раз, чтобы правильно перестроить индекс. Если это не решает проблему в вашем случае, мы хотели бы увидеть сообщения об ошибках, которые вы видите, а также вывод "sudo port -v selfupdate".

Так что после второго "sudo port -v selfupdate" у меня все заработало! Когда включен подробный режим, вы видите, как порт восстанавливает недостающие зависимости. Сделал мой день!

0

Журнал ошибок говорит вам, что делать (или хотя бы пытаться):

Error: Target org.macports.activate returned: Image error: /opt/local/bin/a2p is being used by the active perl5.8 port.  Please deactivate this port first, or use 'port -f activate perl5' to force the activation.

Активирована более старая версия Perl. Узнайте, какая версия perl активирована прямо сейчас, используя port -f activate perl5 , она напечатает некоторые версии 5.8. Просто отключите его с помощью port deactivate perl @5.8.9_0 (измените номер версии на соответствующий) и переустановите все, что вы хотели установить - более новая версия perl теперь будет установлена правильно.

Конечно, есть какой-то лучший способ узнать, какая версия perl установлена - так как я больше не использую macports, а homebrew, я ничего не могу попробовать. Может быть, другой пользователь узнает ...

PS: не только port selfupdate , но и port upgrade outdated для обновления установленных пакетов до более новых версий.

0

Я понимаю, что этот вопрос довольно старый, но в случае, если у кого-то еще есть эта проблема, я нашел здесь решение, которое должно было быть немного изменено (с помощью -f для принудительного использования и для ваших конкретных версий): http:// Yetanotherprogrammingblog. ком / узел / 19

в основном это так:
посмотрите, какие существуют версии perl: установлен порт sudo | grep perl
Мои были разные, просто удалите все старые версии Perl.
perl5 @ 5.8.9_0
perl5 @ 5.12.3_0+perl5_12
perl5.12 @ 5.12.3_1 (активный)
perl5.8 @ 5.8.9_3 (активный)
Сначала удалите сборку вот так
Порт sudo -f удалить perl5 @ 5.8.9_0
затем удалите все старые версии Perl
Порт sudo -f удалить perl5.8
если у вас есть несколько старых сборок и версий, сделайте это для них всех. Вы можете оставить новую версию (5.12 или что-то еще в вашей системе)
Тогда делай
Обновление порта sudo установлено и perl5

0

Попробуйте port selfupdate порта или port sync .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .