![]() |
Модераторы: LSD |
![]() ![]() ![]() |
|
IgorIV |
|
||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 7.9.2009 Репутация: 2 Всего: 8 |
Не нашел раздела более подходящего.
Итак, проблема. Дано. FreeBSD 8.0-RELEASE ImageMagick-6.6.6.10 pecl-imagick-3.0.1 png-1.4.5 В результате какого-то обновления сломался частично Imagick. Не читает файлы png. Совсем. jpg и gif читает. Попытался сделать downgrade порта ImageMagick, есть подозрение на него. Не получилось. Версия 6.6.4 требует библиотеку libltdl22, но такой нет. Она была упразднена месяц назад. Пытаюсь разобратся в коде Imagick. Вот такой код приводит к ошибке
Ошибка такая -
Метод выглятид так
Подскажите как добратся до места в котором читается именно файл. Чтобы понять что не так работает. |
||||||
|
|||||||
IgorIV |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 7.9.2009 Репутация: 2 Всего: 8 |
Озвучьте хоть какие идеи
![]() |
|||
|
||||
oleantus |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 14.1.2011 Репутация: 1 Всего: 1 |
Здравствуйте,
Нашлось ли решение данной проблемы? У меня такая же ситуация, не понятно из-за чего такое произошло. Есть две практически одинаковые машины: FreeBSD 8.1 Stable png-1.4.5 ImageMagick-6.6.6.10 Один и тот же perl-скрипт на одной машине с png работает нормально, на другой вылетает аналогичный exception (Exception 425: corrupt image `' @ error/png.c/ReadPNGImage/3128) в коде: my $status = $image -> BlobToImage($$data); Переменная $data содержит ссылку на png-данные. Там где работает используется perl-5.10, там где не работает - perl-5.12. Но я думаю, что дело не в версии perl, хотя кто знает. Машины обновляются регулярно, но не одновременно, поэтому не могу сказать, когда точно перестало работать на одной из машин :( Хотелось бы тоже найти решение данной проблемы. Это сообщение отредактировал(а) oleantus - 14.1.2011, 14:28 |
|||
|
||||
IgorIV |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 7.9.2009 Репутация: 2 Всего: 8 |
У меня подозрение на ImageMagick, где-то 90%. Потому как imagick не обновлялся давно. png тоже. А ИМ почти каждый месяц.
Сегодня попробую еще раз сделать даунгрейд портов. Просто у меня машина более-менее обновляется. На сервисе в интернете, где все работает версия ИМ - 6.6.2 |
|||
|
||||
oleantus |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 14.1.2011 Репутация: 1 Всего: 1 |
Дело в том, что у меня на обеих машинах ImageMagick 6.6.6.10 и png-1.4.5. А ошибка только на одной из них, на другой все работает нормально. Вообще реально у меня на этих машинах различие только в версиях perl.
|
|||
|
||||
IgorIV |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 7.9.2009 Репутация: 2 Всего: 8 |
Да?!
Тогда давай pkg_version -v perl -V Тогда есть еще одна мысля. Но честно говоря, на нее даже и не думал. |
|||
|
||||
oleantus |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 14.1.2011 Репутация: 1 Всего: 1 |
Все! У меня проблема решилась. Как я и предполагал - дело было в perl. Сделал downgrade до perl 5.10 и пересобрал все порты, зависящие от perl, в том числе и ImageMagick. В итоге теперь все работает. Но все равно волнует вопрос, почему же под perl 5.12 не работало?
|
|||
|
||||
IgorIV |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 7.9.2009 Репутация: 2 Всего: 8 |
oleantus, поделись командами.
|
|||
|
||||
oleantus |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 14.1.2011 Репутация: 1 Всего: 1 |
Я через portupgrade делал:
pkgdb -Ff env DISABLE_CONFLICTS=1 portupgrade -o lang/perl5.10 -f perl-5.12.\* portupgrade -fr perl Некоторые порты не пересобрались, пересобрал каждый по отдельности, для каждого порта запускал make deinstall reinstall clean |
|||
|
||||
IgorIV |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 7.9.2009 Репутация: 2 Всего: 8 |
oleantus, я имел ввиду
perl -V |
|||
|
||||
oleantus |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 14.1.2011 Репутация: 1 Всего: 1 |
perl -V
Summary of my perl5 (revision 5 version 10 subversion 1) configuration: Platform: osname=freebsd, osvers=8.1-stable, archname=amd64-freebsd config_args='-sde -Dprefix=/usr/local -Darchlib=/usr/local/lib/perl5/5.10.1/mach Dprivlib=/usr/local/lib/perl5/5.10.1 -Dman3dir=/usr/local/lib/perl5/5.10.1/perl/man/man3 -Dman1dir=/usr/local/man/man1 -Dsitearch=/usr/local/lib/perl5/site_perl/5.10.1/mach -Dsitelib=/usr/local/lib/perl5/site_perl/5.10.1 -Dscriptdir=/usr/local/bin -Dsiteman3dir=/usr/local/lib/perl5/5.10.1/man/man3 -Dsiteman1dir=/usr/local/man/man1 -Ui_malloc -Ui_iconv -Uinstallusrbinperl -Dcc=cc -Duseshrplib -Dinc_version_list=none -Dccflags=-DAPPLLIB_EXP="/usr/local/lib/perl5/5.10.1/BSDPAN" -Doptimize=-g -DDEBUGGING -Ud_dosuid -Ui_gdbm -Dusethreads=n -Dusemymalloc=y -Duse64bitint' hint=recommended, useposix=true, d_sigaction=define useithreads=undef, usemultiplicity=undef useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef use64bitint=define, use64bitall=define, uselongdouble=undef usemymalloc=y, bincompat5005=undef Compiler: cc='cc', ccflags ='-DAPPLLIB_EXP="/usr/local/lib/perl5/5.10.1/BSDPAN" -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -DDEBUGGING -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include', optimize='-g', cppflags='-DAPPLLIB_EXP="/usr/local/lib/perl5/5.10.1/BSDPAN" -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -DDEBUGGING -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include' ccversion='', gccversion='4.2.1 20070719 [FreeBSD]', gccosandvers='' intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='cc', ldflags =' -Wl,-E -fstack-protector -L/usr/local/lib' libpth=/usr/lib /usr/local/lib libs=-lgdbm -lm -lcrypt -lutil perllibs=-lm -lcrypt -lutil libc=, so=so, useshrplib=true, libperl=libperl.so gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' -Wl,-R/usr/local/lib/perl5/5.10.1/mach/CORE' cccdlflags='-DPIC -fPIC', lddlflags='-shared -L/usr/local/lib -fstack-protector' Characteristics of this binary (from libperl): Compile-time options: DEBUGGING MYMALLOC PERL_DONT_CREATE_GVSV PERL_MALLOC_WRAP USE_64_BIT_ALL USE_64_BIT_INT USE_LARGE_FILES USE_PERLIO Built under freebsd Compiled at Jan 14 2011 22:43:20 @INC: /usr/local/lib/perl5/5.10.1/BSDPAN /usr/local/lib/perl5/site_perl/5.10.1/mach /usr/local/lib/perl5/site_perl/5.10.1 /usr/local/lib/perl5/5.10.1/mach /usr/local/lib/perl5/5.10.1 . |
|||
|
||||
IgorIV |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 7.9.2009 Репутация: 2 Всего: 8 |
Спасибо.
А на втором? |
|||
|
||||
oleantus |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 14.1.2011 Репутация: 1 Всего: 1 |
На обеих машинах теперь одинаково. Там, где раньше был perl 5.12, я не посмотрел.
|
|||
|
||||
IgorIV |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 7.9.2009 Репутация: 2 Всего: 8 |
oleantus, еще раз спасибо!
Был перл 5.8, переделал на 5.10 и пересобрал 319 портов. Теперь работает. ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Разные вопросы" | |
|
Сюда нужно постить только темы, которые нельзя отнести ни к одному из существующих разделов. Если вы не уверены, то просмотрите еще раз заголовки форумов, карту форума или попробуйте воспользоваться поиском.
С уважением, Smartov. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Разные вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |