Nadal nierozwiązany błąd podczas instalowania na Macports. „Nie znaleziono zależności”

0

Próbuję zainstalować „ipe” na Snow Leopard za pośrednictwem Macports. Polecenie, które uruchamiam, to „sudo port install ipe”. To jest wynik:

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>

Co daje? Jak mogę to naprawić?

edytuj po aktualizacji, to jest wynik. Wciąż zawodzi natychmiast.

--->  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

wciąż nierozwiązane

blnak
źródło

Odpowiedzi:

2

miał ten sam problem. Postępowałem zgodnie z radą Jensa i dokonałem „aktualizacji portu jako przestarzałej”, ale brakujące zależności nadal istniałyby. Pomogło mi więcej badań, które okazały się przydatne:

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

gdzie jest napisane:

Komunikaty o brakującym p5. * - porty prawie zawsze są powodowane przez posiadanie MacPorts 1.x, jednorazowe uruchomienie automatycznej aktualizacji w celu uaktualnienia do MacPorts 2.x oraz niepoprawne przebudowanie indeksu. Rozwiązaniem tego problemu jest ponowne uruchomienie samoaktualizacji, która poprawnie odbudowuje indeks. Jeśli to nie rozwiąże problemu w twoim przypadku, chcielibyśmy zobaczyć komunikaty o błędach, które widzisz, a także dane wyjściowe „sudo port -v selfupdate”.

Więc po zrobieniu drugiego „sudo port -v selfupdate” zadziałało dobrze dla mnie! Po włączeniu trybu pełnego możesz zobaczyć, jak port naprawia brakujące zależności. Uczyniłem mój dzień!

Al Hombre
źródło
0

Spróbuj port selfupdatelub port sync.

Daniel Beck
źródło
0

Dziennik błędów mówi ci, co robisz (lub przynajmniej próbujesz):

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.

Istnieje aktywowana starsza wersja perla. Dowiedz się, która wersja perla jest teraz aktywowana port -f activate perl5, wydrukuje niektóre wersje w wersji 5.8. Po prostu dezaktywuj go za pomocą port deactivate perl @5.8.9_0(zmień numer wersji na pasujący) i zainstaluj ponownie wszystko, co chcesz zainstalować - nowsza wersja perla zainstaluje się teraz poprawnie.

Z pewnością istnieje lepszy sposób, aby dowiedzieć się, która wersja perla jest zainstalowana - ponieważ nie używam już Macports, ale homebrew, nie mogę nic wypróbować. Może jakiś inny użytkownik się dowie ...

PS: Nie tylko port selfupdate, port upgrade outdatedaby zaktualizować zainstalowane pakiety do nowszych wersji.

Jens Erat
źródło
Chriss-MacBook: macports chris $ sudo port -f aktywuj perl5 Hasło: ---> Aktualnie zainstalowane są następujące wersje perl5: ---> perl5 'at'8.8.9_0 ---> perl5' at'5.12.3_1 + perl5_12 Błąd: aktywacja portu nie powiodła się: Błąd rejestru: Proszę podać pełną wersję zarejestrowaną w rejestrze portu. Chriss-MacBook: macports chris $ sudo port dezaktywować perl 'at'5.8.9_0 Błąd: deaktywacja portu nie powiodła się: Błąd obrazu: port perl nie jest aktywny. Chriss-MacBook: Macports chris $ sudo port dezaktywuj perl 'at'5.12.3_1 + perl5_12 Błąd: deaktywacja portu nie powiodła się: Błąd obrazu: port perl nie jest aktywny.
blnak 21.10.11
Możesz spróbować wymusić odinstalowanie perla za pomocą, sudo port -f uninstall perla następnie zainstalować ipe (który ponownie zainstaluje perl w nowej wersji). Wymuszona dezinstalacja usunie perla, chociaż inne pakiety będą od niego zależne, ponieważ będziesz go bezpośrednio instalować, co nie powinno mieć znaczenia. Ale nie mogło być problemy z pakietów wymagających tej starej wersji (choć szanse są niewielkie).
Jens Erat
0

Zdaję sobie sprawę, że to pytanie jest dość stare, ale na wypadek, gdyby ktoś miał ten problem, znalazłem tutaj rozwiązanie, które musiało zostać nieco zmodyfikowane (za pomocą opcji -f, aby wymusić i dla określonych wersji): http: // yetanotherprogrammingblog. com / node / 19

w zasadzie jest to:
sprawdź, jakie wersje perla istnieją: zainstalowany sudo | grep perl
Moje były różne, po prostu odinstaluj wszystkie starsze wersje perla.
perl5 @ 5.8.9_0
perl5 @ 5.12.3_0 + perl5_12
perl5.12 @ 5.12.3_1 (aktywny)
perl5.8 @ 5.8.9_3 (aktywny)
Najpierw odinstaluj kompilację jak ten
sudo port -f odinstaluj perl5 @ 5.8.9_0,
a następnie odinstaluj wszystkie stare wersje perl
sudo port -f odinstaluj perl5.8,
jeśli masz wiele starych kompilacji i wersji, zrób to dla nich wszystkich. Możesz zostawić nową wersję (5.12 lub cokolwiek, co jest w twoim systemie).
Następnie
zainstaluj uaktualnienie portu sudo i perl5

myśliwiec
źródło