Perl, shared hosting, доп. модули (математика)? (ком. строки нет)

1 234
N
На сайте с 06.05.2007
Offline
419
#21
beginerx:
а вообще несколько разочаровался в Perl - такое впесатение что он устарел и мало кто из школьников для него пищет,

поправил. старый - не значит плохой.

попытка use Math::FFT выдает ош-ку 500

это и вся диагностика? маловато будет

Кнопка вызова админа ()
beginerx
На сайте с 13.07.2009
Offline
173
#22

на бесплатном аке никуда не пускает и больше ничего не посмотреть...

мне в принципе непонятно как так настроили... по идее сам перл должен однаковыми правами запускаться и файлы *.pl ? Потому к нему из шела на бесплатном аке и доступа нет... но получается перл видит файл use lib "/sdds/dsdss" (без ошибок)

А запустить use Math:FFT уже не может...

А из cамого *.pl можно какую-нибудь диагностику или отладочную инфу получить на use Math:FFT ?

вот еще надо попробовать в бесплатном аке указать абсолютный путь к скомпилированной либе на платном аке...

хотя из шела на бесплатном аке к этой папке не пускает юзера, но возможно там обращение будет от перла с другими правами...

>>>Скорость и Реакция<<< (https://vk.com/app4629907 ): онлайн тренировка скорости и времени реакции.... (https://vk.com/app4612117 )... (https://vk.com/club18740762 ).
N
На сайте с 06.05.2007
Offline
419
#23
beginerx:
А из cамого *.pl можно какую-нибудь диагностику или отладочную инфу получить на use Math:FFT ?

Так диагностика есть. Просто вы ее не нашли.

попробуйте вставить :

use CGI::Carp qw(fatalsToBrowser);

чтобы ошибки увидеть прямо на страничке

beginerx
На сайте с 13.07.2009
Offline
173
#24

Ага, не может загрузить...

Can't load '/srv/disk9/12830*/www/*.com/blib/arch/auto/Math/FFT/FFT.so' for module Math::FFT: /srv/disk9/12830*/www/*.com/blib/arch/auto/Math/FFT/FFT.so: wrong ELF class: ELFCLASS32 at /usr/lib/perl/5.10/DynaLoader.pm line 192.
at /home/www/*.com/*.pl line 51
Compilation failed in require at /home/www/a*.com/*.pl line 51.
BEGIN failed--compilation aborted at /home/www/*.com/*.pl line 51.

по ftp файл доступен, 755, из шела файл виден. Из браузера файл скачать можно.

N
На сайте с 06.05.2007
Offline
419
#25
beginerx:
Может все же операционные системы разные? вот elfclass32 - сразу думается а может на платном 32 бтьа система а на бесплатном 64? Или так не бывает... ?

Очень похоже на это.

Разумно даже предположить, что этот бесплатный представляет из себя отдельный сервер похуже и с объемом памяти менее 4 ГБ. Такой чтобы не имело смысла 64битную систему использовать.

beginerx
На сайте с 13.07.2009
Offline
173
#26

х-м-м-м попробовал испортить путь к либе на платном и бесплатном, ошибка одинаковая, и elf32 у обоих, это видимо к самому perl относится в сообщениях когда он не видит либ. Похоже как-то хитро запретили перлу подгружать *.so из юзерских папок на бесплатном? или так случайно у хостера получилось?

Диски видны все и на платном и бесплатном и кол-во одинаковое и имена одинаковые... похоже что один сервер... или может облачный... ?

А можно из *.pl или шела посмотреть откуда перл может подгружать lib ? Переменная окружения или что-то такое?

Может если там /temp или что-то подобное можно попробовать туда подкинуть lib и указать путь, раз в юзеркские папки не годится...?

N
На сайте с 06.05.2007
Offline
419
#27
beginerx:
Похоже как-то хитро запретили перлу подгружать *.so из юзерских папок на бесплатном?

Не думаю, что это вообще возможно. Разве что хостер специально заморочится и добавит каких-то патчей в perl.

beginerx:
А можно из *.pl или шела посмотреть откуда перл может подгружать lib ?

если вы правильно воспользовались советами, то это не важно.

в переменной @INC обычно пути. вот такой кусок должен показать список каталогов из которых подгружаются модули :

foreach(@INC) {

print "$_\n";

}

И обычно в этом списке уже есть каталог ".",так что многие скрипты поставляются со своим набором библиотек и нормально работают.

beginerx
На сайте с 13.07.2009
Offline
173
#28

У обоих практически одинаково, но у бесплатного шел не может зайти в /etc и /usr

и из шела не рабоате команда cd

/srv/disk9/12830*/www/*.com/blib

/etc/perl

/usr/local/lib/perl/5.10.1

/usr/local/share/perl/5.10.1

/usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl

тогда получается если такой запрет на so был сделан сознательно а не случайно то админ кушает свой хлеб не зря?

Andreyka
На сайте с 19.02.2005
Offline
822
#29

У вас библиотека 32-х битная а на сервере 64-бит, при чем тут запрет в so?

Ваш бесплатный аккаунт просто в чруте.

Не стоит плодить сущности без необходимости
beginerx
На сайте с 13.07.2009
Offline
173
#30

а почему вы думаете что система 64 бит, в обоих аках и платном и бесплатном при установке пути поиска lib неправильно вылезает одна и таже ошибка и в обоих случаях ссылка на elf...32 и строку внутри системного перла...

Но в случае правильного пути на платном работает, значит он 32?

А на бесплатном не работает. Хотя путь правильный и он есть в @INC

Неужели бесплатный ак 64 битный?

1 234

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий