URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 64968
[ Назад ]

Исходное сообщение
"Не собирается перл."

Отправлено Max , 20-Мрт-06 19:40 
Что делаю:
Поставил систему: BSD 4.9
Скачал перл: 5.8.8
запустил configure
make depend
make
cp shared.bs ../../../lib/auto/threads/shared/shared.bs
chmod 644 ../../../lib/auto/threads/shared/shared.bs

        Making Errno (nonxs)
Writing Makefile for Errno
../../miniperl "-I../../lib" "-I../../lib" Errno_pm.PL Errno.pm
cp Errno.pm ../../lib/Errno.pm
*** Error code 1 (ignored)

        Everything is up to date. Type 'make test' to run test suite.

и всё, что ему надо?


Содержание

Сообщения в этом обсуждении
"Не собирается перл."
Отправлено lavr , 20-Мрт-06 20:32 
>Что делаю:
>Поставил систему: BSD 4.9
>Скачал перл: 5.8.8
>запустил configure
>make depend
>make
>cp shared.bs ../../../lib/auto/threads/shared/shared.bs
>chmod 644 ../../../lib/auto/threads/shared/shared.bs
>
>        Making Errno (nonxs)
>Writing Makefile for Errno
>../../miniperl "-I../../lib" "-I../../lib" Errno_pm.PL Errno.pm
>cp Errno.pm ../../lib/Errno.pm
>*** Error code 1 (ignored)
>
>        Everything is up to
>date. Type 'make test' to run test suite.
>
>и всё, что ему надо?

читать умеем?

>cp Errno.pm ../../lib/Errno.pm
>*** Error code 1 (ignored)

данная ошибка игнорируется, не ошибка эта, чтобы посмотреть КАК собрался:

>        Everything is up to
>date. Type 'make test' to run test suite.

наберите 'make test' для выполнения пакета тестов

# script test.log
# make test
смотришь по завершении итого: сколько Ok и сколько bad, учитывая что не все тесты
для этой платформы и то что на 4.9 еще кривые треды...
# exit
# less test.log (можешь посмотреть лог выполнения тестов)

that's all.


"Не собирается перл."
Отправлено Max , 20-Мрт-06 21:44 
хорошо спасибо за совет, но вот на другой машине тоже 4.9
делаю configure, make depend, make

/tmp/ccrNSCrh.o(.text+0x221e): undefined reference to `Perl_mg_get'
/tmp/ccrNSCrh.o(.text+0x222c): undefined reference to `PL_curcop'
/tmp/ccrNSCrh.o(.text+0x2237): undefined reference to `PL_curcop'
/tmp/ccrNSCrh.o(.text+0x2242): undefined reference to `PL_curcop'
/tmp/ccrNSCrh.o(.text+0x224d): undefined reference to `PL_curcop'
/tmp/ccrNSCrh.o(.text+0x225e): undefined reference to `PL_curcop'
/tmp/ccrNSCrh.o(.text+0x226a): undefined reference to `PL_dowarn'
/tmp/ccrNSCrh.o(.text+0x227b): undefined reference to `Perl_sv_isa'
/tmp/ccrNSCrh.o(.text+0x2291): undefined reference to `Perl_warner'
/tmp/ccrNSCrh.o(.text+0x22b1): undefined reference to `Perl_croak'
/tmp/ccrNSCrh.o: In function `Perl_avhv_store_ent':
/tmp/ccrNSCrh.o(.text+0x22db): undefined reference to `avhv_index'
/tmp/ccrNSCrh.o: In function `Perl_avhv_fetch_ent':
/tmp/ccrNSCrh.o(.text+0x230b): undefined reference to `avhv_index'
/tmp/ccrNSCrh.o: In function `Perl_avhv_delete_ent':
/tmp/ccrNSCrh.o(.text+0x2341): undefined reference to `Perl_hv_fetch_ent'
/tmp/ccrNSCrh.o(.text+0x236d): undefined reference to `avhv_index_sv'
/tmp/ccrNSCrh.o: In function `Perl_avhv_exists_ent':
/tmp/ccrNSCrh.o(.text+0x23a5): undefined reference to `Perl_hv_fetch_ent'
/tmp/ccrNSCrh.o(.text+0x23ce): undefined reference to `avhv_index_sv'
/tmp/ccrNSCrh.o: In function `Perl_avhv_iternext':
/tmp/ccrNSCrh.o(.text+0x23fa): undefined reference to `Perl_hv_iternext'
/tmp/ccrNSCrh.o: In function `Perl_avhv_iterval':
/tmp/ccrNSCrh.o(.text+0x241e): undefined reference to `Perl_hv_iterval'
/tmp/ccrNSCrh.o(.text+0x242c): undefined reference to `avhv_index_sv'
*** Error code 1

Stop in /root/perl-5.8.6.

как это понимать если вас не затруднит?


"Не собирается перл."
Отправлено lavr , 21-Мрт-06 10:46 
>хорошо спасибо за совет, но вот на другой машине тоже 4.9
>делаю configure, make depend, make
>
>/tmp/ccrNSCrh.o(.text+0x221e): undefined reference to `Perl_mg_get'
>/tmp/ccrNSCrh.o(.text+0x222c): undefined reference to `PL_curcop'
>/tmp/ccrNSCrh.o(.text+0x2237): undefined reference to `PL_curcop'
>/tmp/ccrNSCrh.o(.text+0x2242): undefined reference to `PL_curcop'
>/tmp/ccrNSCrh.o(.text+0x224d): undefined reference to `PL_curcop'
>/tmp/ccrNSCrh.o(.text+0x225e): undefined reference to `PL_curcop'
>/tmp/ccrNSCrh.o(.text+0x226a): undefined reference to `PL_dowarn'
>/tmp/ccrNSCrh.o(.text+0x227b): undefined reference to `Perl_sv_isa'
>/tmp/ccrNSCrh.o(.text+0x2291): undefined reference to `Perl_warner'
>/tmp/ccrNSCrh.o(.text+0x22b1): undefined reference to `Perl_croak'
>/tmp/ccrNSCrh.o: In function `Perl_avhv_store_ent':
>/tmp/ccrNSCrh.o(.text+0x22db): undefined reference to `avhv_index'
>/tmp/ccrNSCrh.o: In function `Perl_avhv_fetch_ent':
>/tmp/ccrNSCrh.o(.text+0x230b): undefined reference to `avhv_index'
>/tmp/ccrNSCrh.o: In function `Perl_avhv_delete_ent':
>/tmp/ccrNSCrh.o(.text+0x2341): undefined reference to `Perl_hv_fetch_ent'
>/tmp/ccrNSCrh.o(.text+0x236d): undefined reference to `avhv_index_sv'
>/tmp/ccrNSCrh.o: In function `Perl_avhv_exists_ent':
>/tmp/ccrNSCrh.o(.text+0x23a5): undefined reference to `Perl_hv_fetch_ent'
>/tmp/ccrNSCrh.o(.text+0x23ce): undefined reference to `avhv_index_sv'
>/tmp/ccrNSCrh.o: In function `Perl_avhv_iternext':
>/tmp/ccrNSCrh.o(.text+0x23fa): undefined reference to `Perl_hv_iternext'
>/tmp/ccrNSCrh.o: In function `Perl_avhv_iterval':
>/tmp/ccrNSCrh.o(.text+0x241e): undefined reference to `Perl_hv_iterval'
>/tmp/ccrNSCrh.o(.text+0x242c): undefined reference to `avhv_index_sv'
>*** Error code 1
>
>Stop in /root/perl-5.8.6.
>
>как это понимать если вас не затруднит?

дык очень просто, есть объектник ccrNSCrh.o и при сборке чего-то там в исходниках
используются вызовы других функций, вероятно библиотеки с ними не найдены, отсюда
"undefined reference" (неразрешенная ссылка на ТО-ТО и ТО-ТО)

когда сидишь на диалапе, нужно взять CD или DVD - зайти к любому провайдеру и
спросить специалистов по Unix из службы поддержки, попросить записать
соответствующие sources. Ну или все проделать самому в Internet кафе, в университете
и тд и тп.

Ну чтобы построить список:

# cd /usr/ports/category/name
# make fetch-recursive-list

man ports - рекомендую.


"Не собирается перл."
Отправлено AMDmi3 , 20-Мрт-06 21:31 
>Что делаю:
>Поставил систему: BSD 4.9
>Скачал перл: 5.8.8
>запустил configure
>make depend
>make

Чем порты не угодили? Зачем руками собирать?


"Не собирается перл."
Отправлено Max , 20-Мрт-06 21:47 
Когда живёшь на диалапе, порты совсем не кстати, у них есть свойство тянуть за собой по мимо себя ещё кучу всего. Вот и хотел поставить перл малой кровью, а он упирается, на одной машине после make test останавливается на середине и жёт чегото (жду уже 3 часа) а надругой машине вообще какая то охинея выходит, см. пост выше. Главное система только встала, ничего больше поставить не успел с прела начал, и на тебе, зрень какая то уже 2 дня бьюсь.

"Не собирается перл."
Отправлено AMDmi3 , 20-Мрт-06 22:48 
>Когда живёшь на диалапе, порты совсем не кстати, у них есть свойство
>тянуть за собой помимо себя ещё кучу всего. Вот и
Что именно? Мне правда очень интересно. Сам сидел на диалапе и ни на что не жаловался.

>хотел поставить перл малой кровью, а он упирается, на одной машине
lang/perl5.8 не зависит вообще ни от чего - бери и ставь. Зачем выдумывать себе проблемы и ставить что-то руками, нарываясь на ошибки и тратя свое время (рискуя потом еще и нарваться на неприятности при обновлении), когда есть порты?
make install clean вам в помощь.


"Не собирается перл."
Отправлено lavr , 21-Мрт-06 11:23 
>Когда живёшь на диалапе, порты совсем не кстати, у них есть свойство
>тянуть за собой по мимо себя ещё кучу всего. Вот и
>хотел поставить перл малой кровью, а он упирается, на одной машине
>после make test останавливается на середине и жёт чегото (жду уже
>3 часа) а надругой машине вообще какая то охинея выходит, см.
>пост выше. Главное система только встала, ничего больше поставить не успел
>с прела начал, и на тебе, зрень какая то уже 2
>дня бьюсь.

вы вероятно НЕ ПОНИМАЕТЕ. ПОРТЫ - это ТОЧНО такая же сборка из sources, вот только
название port от portability (софт заточен конкретно под OS и содержит патчи в
директории files) и самое главное - ведется база по установленному софту, что
установлено и куда - для управления.
Зависимости (depends) - по названию, дополнительный софт который требуется для
сборки того или иного software, сборка с зависимостями может быть интерактивной
или просто make с опциями_сборки, для этого достаточно посмотреть Makefile