Проблемы с установкой, настройкой и работой системных и сетевых программ.
Модераторы: GRooVE, alexco
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
Gloft
- лейтенант
- Сообщения: 645
- Зарегистрирован: 2008-03-09 11:32:12
- Откуда: Москва
Непрочитанное сообщение
Gloft » 2010-03-20 22:06:49
После обновления libjpeg пересталим запускаться многие программы. Например:
Код: Выделить всё
% inkscape
/libexec/ld-elf.so.1: Shared object "libjpeg.so.10" not found, required by "libpoppler-glib.so.4"
% locate libjpeg.so
/usr/compat/linux/usr/lib/libjpeg.so.62
/usr/compat/linux/usr/lib/libjpeg.so.62.0.0
/usr/local/diablo-jdk1.6.0/jre/lib/i386/libjpeg.so
/usr/local/jdk1.6.0/jre/lib/i386/libjpeg.so
/usr/local/lib/libjpeg.so
/usr/local/lib/libjpeg.so.11
/usr/ports/java/diablo-jdk16/work/diablo-jdk1.6.0_07/jre/lib/i386/libjpeg.so
% ls -al /usr/local/lib/libjpeg.so*
lrwxr-xr-x 1 root wheel 13 20 фев 19:18 /usr/local/lib/libjpeg.so -> libjpeg.so.11
-rwxr-xr-x 1 root wheel 235640 20 фев 19:18 /usr/local/lib/libjpeg.so.11
% ldconfig -r | grep jpeg
279:-ljpeg.11 => /usr/local/lib/libjpeg.so.11
483:-lopenjpeg.2 => /usr/local/lib/libopenjpeg.so.2
Как слинковать ljpeg.11 => /usr/local/lib/libjpeg.so.10?
Или есть решение другое?
Последний раз редактировалось
f_andrey 2010-03-20 22:12:47, всего редактировалось 1 раз.
Причина: Автору, выбирайте пожалуйста раздел соответствуюший тематике вашего сообщения.
Gloft
-
Хостинг HostFood.ru
-
Хостинг HostFood.ru
Тарифы на хостинг в России, от 12 рублей:
https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.:
https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах:
https://www.host-food.ru/domains/
-
Gloft
- лейтенант
- Сообщения: 645
- Зарегистрирован: 2008-03-09 11:32:12
- Откуда: Москва
Непрочитанное сообщение
Gloft » 2010-03-20 23:06:24
Ну да, ну дв.
Волков бояться в лес не ходить.
С вашей позицией мы бы еще в каменных пещерах жили.
Gloft
-
Гость
- проходил мимо
Непрочитанное сообщение
Гость » 2010-03-20 23:41:10
прежде чем что то делать неплохо бы изучить как и что кто делал до вас
вроде не америку открываете, как лучше обновляться и тем более такая проблема уже на форуме обсудали и не раз
Гость
-
Case
- рядовой
- Сообщения: 30
- Зарегистрирован: 2008-08-22 21:21:15
- Откуда: Ижевск, Россия
Непрочитанное сообщение
Case » 2010-03-20 23:49:17
Поищите по форуму:
http://forums.freebsd.org
запрос: libjpeg, найдется целый ряд всевозможных обсуждений.
Я тоже попал в такую передрягу, пришлось выполнять:
это заняло целую кучу времени.
Возможно, это было и не лучшим решением.
Case
-
Gloft
- лейтенант
- Сообщения: 645
- Зарегистрирован: 2008-03-09 11:32:12
- Откуда: Москва
Непрочитанное сообщение
Gloft » 2010-03-21 0:08:33
Именно после обновления
sudo portupgrade -fr graphics/jpeg
многое перестало работать.
Я читал форум
http://forums.freebsd.org ничего нового по этому вопросу для себя там не нашол пока.
Gloft
-
hodok
- мл. сержант
- Сообщения: 125
- Зарегистрирован: 2008-08-29 8:32:02
- Откуда: Саратовская область
-
Контактная информация:
Непрочитанное сообщение
hodok » 2010-03-21 7:01:27
А всё не пробовал обновить, не только эту библиотеку?
hodok
-
Gamerman
- капитан
- Сообщения: 1723
- Зарегистрирован: 2009-05-17 21:01:23
- Откуда: Украина, Ужгород - Днепр
-
Контактная информация:
Непрочитанное сообщение
Gamerman » 2010-03-21 10:33:31
многое перестало работать.
из-за того, что изменилась версия библиотеки. Нужно пересобрать все, что ссылается на нее.
Хотя не понимаю я логику софта, который привязку делает к версии библиотеки, а не к ее названию.
Глюк глюком вышибают!
Gamerman
-
ProFTP
- подполковник
- Сообщения: 3388
- Зарегистрирован: 2008-04-13 1:50:04
- Откуда: %&й
-
Контактная информация:
Непрочитанное сообщение
ProFTP » 2010-03-21 11:07:13
или полностью
Код: Выделить всё
#!/usr/bin/perl
$nn = 0;
while (1) {
$nn++;
open( OPERN, "portversion |" );
my @all2 = <OPERN>;
close OPERN;
my @all;
for ( $i = 0 ; $i < @all2 ; $i++ ) {
my ( $pp, $st ) = split( / /, $all2[$i], 2 );
if ( $st =~ '<' ) {
push @all, $pp; # $all[$i] = $pp;
}
}
exit if ( !$all[0] || $nn > 2 );
while (1) {
last if !$all[0];
print "$all[0]\n";
logsave( get_time(), $all[0] );
system("portupgrade -rf $all[0]");
# system("portupgrade -Rf $all[0]");
# первый порт попробовать обновить вдоль и поперек
# (выше system нужно закомментировать)
# if ($nn == 1) {
# system("portupgrade -rRf $all[0]");
# } else {
# system("portupgrade -rf $all[0]");
# }
# экспериментально:
# можно добавить чтобы скрипт автоматически нажимал на энтер
# use IO::Select;
# my $select = IO::Select->new;
# for(@array)
# open my $pipe, "|$_";
# $select->add($pipe);
# }
# my @waiters = $select->can_write($timeout);
# print $_ "\x0a" for @waiters;
logsave( get_time(), $all[0] );
shift @all;
my @all = old(@all);
}
}
sub old {
my @all = @_;
open( OPEN2, "portversion |" );
my @all_all = <OPEN2>;
close OPEN2;
my @old;
my @no_old;
foreach my $p (@all_all) {
my ( $pname, $status ) = split( / /, $p, 2 );
if ( $status =~ '<' ) {
push @old, $pname;
}
else {
push @no_old, $pname;
}
}
my %seen;
@seen{@all} = ();
delete @seen{@no_old};
return keys %seen;
}
sub get_time {
my ( $sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst ) =
localtime(time);
$mon++;
$year += 1900;
if ( $mday < 10 ) { $mday = "0$mday"; }
if ( $mon < 10 ) { $mon = "0$mon"; }
if ( $min < 10 ) { $min = "0$min"; }
my $date = "$mday $mon $year";
my $time = "$hour:$min:$sec";
my $cur_all_day = $mday + $mon * 30 + $year * 365;
my $radate = "$year-$mon-$mday $hour:$min:$sec";
return $radate;
}
sub logsave {
my ( $time, $ports ) = @_;
my $logfile;
$logfile = "\n time: $time \n ports: $ports \n\n";
system("touch /var/log/portupgrade.log");
open( DB2, "/var/log/portupgrade.log" ) || die "Cannot open file: $!";
my @base = <DB2>;
close(DB2);
open( DB, ">/var/log/portupgrade.log" ) || die "Cannot open file : $!";
print DB @base;
print DB $logfile;
close(DB);
}
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'


ProFTP