gcc -Wall -I/usr/include -I/usr/local/include -I/usr/include/pcre -c need_cache_update.c
gcc -Wall -I/usr/include -I/usr/local/include -I/usr/include/pcre -o redirector redirector.c -L/lib `pcre-config --libs` pass.o raw_change.o load_cache.o pcre.o parse_input.o init_vars.o check_urls.o run_make_cache.o new_url.o redirect.o err_mes.o now.o get_opt.o parse_urls.o cache2url.o ip.o id.o comparing.o
pcre.o: In function `load_pcre_file':
pcre.c:(.text+0x4da): undefined reference to `pcre_compile'
pcre.c:(.text+0x60b): undefined reference to `pcre_study'
pcre.o: In function `check_pcre':
pcre.c:(.text+0x7d0): undefined reference to `pcre_exec'
get_opt.o: In function `get_opt':
get_opt.c:(.text+0x455): undefined reference to `pcre_compile'
get_opt.c:(.text+0x50e): undefined reference to `pcre_study'
get_opt.c:(.text+0x64c): undefined reference to `pcre_exec'
get_opt.c:(.text+0x6cf): undefined reference to `pcre_exec'
get_opt.c:(.text+0x752): undefined reference to `pcre_exec'
get_opt.c:(.text+0x945): undefined reference to `pcre_exec'
get_opt.c:(.text+0x9c8): undefined reference to `pcre_exec'
get_opt.o:get_opt.c:(.text+0xa4b): more undefined references to `pcre_exec' follow
collect2: выполнение ld завершилось с кодом возврата 1
make: *** [all] Ошибка 1
Ubuntu 11.10 & REJIK
Ubuntu 11.10 & REJIK
Ошибка сборки:
Re: Ubuntu 11.10 & REJIK
Это я знаю... Просто на 11.04 собиралось, а после dist-upgrade вот такое кажет...Пункт 3.
Но что самое интересное:
root@ubuntu:/usr/include# apt-get install libpcre3 libpcre3-dev
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Уже установлена самая новая версия libpcre3.
Уже установлена самая новая версия libpcre3-dev.
обновлено 0, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Re: Ubuntu 11.10 & REJIK
1. Покажите список всех доступных пакетов, в имени которых есть libpcre
2. Покажите вывод команды ldconfig -v|grep pcre
3. После dist-upgrade машина перегружалась?
2. Покажите вывод команды ldconfig -v|grep pcre
3. После dist-upgrade машина перегружалась?
Re: Ubuntu 11.10 & REJIK
1.
2.root@ubuntu:/usr/src/redirector-3.2.8# aptitude search pcre
v apertium-pcre2 -
v apertium-pcre2 -
p cl-ppcre - Portable Regular Express Library for Common Lisp
p clisp-module-pcre - clisp module that adds libpcre support
p gambas2-gb-pcre - The Gambas regexp component
p haskell-pcre-light-doc - фиктивный пакет для обновления
p libghc-pcre-light-dev - Haskell library for Perl 5-compatible regular expressions
v libghc-pcre-light-dev-0.4-36191 -
v libghc-pcre-light-dev-0.4-599f8 -
p libghc-pcre-light-doc - library documentation for pcre-light
p libghc-pcre-light-prof - pcre-light library with profiling enabled
v libghc-pcre-light-prof-0.4-36191 -
v libghc-pcre-light-prof-0.4-599f8 -
p libghc6-pcre-light-dev - фиктивный пакет для обновления
p libghc6-pcre-light-doc - фиктивный пакет для обновления
p libghc6-pcre-light-prof - фиктивный пакет для обновления
p liblua5.1-rex-pcre-dev - PCRE development files for the Lua language version 5.1
p liblua5.1-rex-pcre0 - Perl regular expressions library for the Lua language version 5.1
i libpcre++-dev - C++ wrapper class for pcre (development)
p libpcre++0 - C++ wrapper class for pcre (runtime)
p libpcre-ocaml - OCaml bindings for PCRE (runtime)
v libpcre-ocaml-46691 -
p libpcre-ocaml-dev - OCaml bindings for PCRE (Perl Compatible Regular Expression)
v libpcre-ocaml-dev-46691 -
v libpcre-ocaml-dev-y59x5 -
v libpcre-ocaml-y59x5 -
p libpcre3 - Perl 5 Compatible Regular Expression Library - runtime files
p libpcre3-dbg - Perl 5 Compatible Regular Expression Library - debug symbols
p libpcre3-dev - Perl 5 Compatible Regular Expression Library - development files
p libpcrecpp0 - Perl 5 Compatible Regular Expression Library - C++ runtime files
p pcregrep - grep utility that uses perl 5 compatible regexes.
p pike7.8-pcre - PCRE module for Pike
p postfix-pcre - PCRE map support for Postfix
p sqlite3-pcre - Perl-compatible regular expression support for SQLite
3. Перегружалась конечно...root@ubuntu:/usr/src/redirector-3.2.8# ldconfig -v|grep pcre
/sbin/ldconfig.real: Путь «/lib/x86_64-linux-gnu» задан несколько раз
/sbin/ldconfig.real: Путь «/usr/lib/x86_64-linux-gnu» задан несколько раз
libpcre.so.3 -> libpcre.so.3.12.1
libpcreposix.so.3 -> libpcreposix.so.3.12.1
libpcrecpp.so.0 -> libpcrecpp.so.0.0.0
libpcre++.so.0 -> libpcre++.so.0.0.0
Re: Ubuntu 11.10 & REJIK
добрый день. имею абсолютно аналогичную проблему при сборке
система - чистая только установленная Ubuntu 11.10 server i386
в логах и выводе ldconfig - абсолютно то же самое
система - чистая только установленная Ubuntu 11.10 server i386
в логах и выводе ldconfig - абсолютно то же самое
Re: Ubuntu 11.10 & REJIK
Немного странно видеть нулевые версии:
libpcrecpp.so.0 -> libpcrecpp.so.0.0.0
libpcre++.so.0 -> libpcre++.so.0.0.0
Я правильно понимаю, что проинсталированным считается только i libpcre++-dev - C++ wrapper class for pcre (development) ?
На сколько я помню, можно сделать apt-get install --reinstall что бы ещё раз проинсталировать пакеты.
Попробуйте сделать это для libpcre3, libpcre3-dev
После чего сделайте ldconfig и попробуйте собрать.
Если не получится, покажите снова ldconfig -v|grep pcre
libpcrecpp.so.0 -> libpcrecpp.so.0.0.0
libpcre++.so.0 -> libpcre++.so.0.0.0
Я правильно понимаю, что проинсталированным считается только i libpcre++-dev - C++ wrapper class for pcre (development) ?
На сколько я помню, можно сделать apt-get install --reinstall что бы ещё раз проинсталировать пакеты.
Попробуйте сделать это для libpcre3, libpcre3-dev
После чего сделайте ldconfig и попробуйте собрать.
Если не получится, покажите снова ldconfig -v|grep pcre
Re: Ubuntu 11.10 & REJIK
Сделал - пофик... Всё тоже самое.
Re: Ubuntu 11.10 & REJIK
вот и меня это малость "настораживает" - ведь при установке пакетов библиотек никаких ошибок не былоSlava писал(а):Немного странно видеть нулевые версии:
libpcrecpp.so.0 -> libpcrecpp.so.0.0.0
libpcre++.so.0 -> libpcre++.so.0.0.0
переустановка пакетов ничего не дала - всё та же ошибка при сборке и всё тот же результат выводаSlava писал(а): На сколько я помню, можно сделать apt-get install --reinstall что бы ещё раз проинсталировать пакеты.
Попробуйте сделать это для libpcre3, libpcre3-dev
После чего сделайте ldconfig и попробуйте собрать.
Если не получится, покажите снова ldconfig -v|grep pcre
root@ubuntu:/usr/src/redirector-3.2.8# ldconfig -v | grep pcre
/sbin/ldconfig.real: Путь «/lib/i386-linux-gnu» задан несколько раз
/sbin/ldconfig.real: Путь «/usr/lib/i386-linux-gnu» задан несколько раз
libpcre.so.3 -> libpcre.so.3.12.1
libpcrecpp.so.0 -> libpcrecpp.so.0.0.0
libpcreposix.so.3 -> libpcreposix.so.3.12.1
libpcre++.so.0 -> libpcre++.so.0.0.0
Re: Ubuntu 11.10 & REJIK
Можете попробовать собрать что нить отсюда: http://dh.opennet.ru/pcre5.html ?
Re: Ubuntu 11.10 & REJIK
Вот первое собралось:
PS Забыл добавить у меня Юбунта х64
Последнее тоже, но с предупреждениями:#include <stdio.h>
#include <pcre.h>
int main(int argc, char* argv[])
{
pcre *f; /* переменная для хранения преобразованного шаблона */
char *pattern="(\\d{2})[-/\\.](\\d{2})[-/\\.](\\d{2})?(\\d{2}"; /* шаблон с ошибкой */
const char *errstr; /* буфер для сообщения об ошибке */
int errchar; /* номер символа */
if((f=pcre_compile(pattern,PCRE_CASELESS|PCRE_MULTILINE,&errstr,&errchar,NULL))==NULL)
{
printf("Ошибка: %s\nСимвол N%i\nШаблон:%s\n",errstr,errchar,pattern);
exit(1);
}
printf("Все прошло нормально!\n");
return 0;
}
gcc -o test test.c `pcre-config --libs`
test.c: В функции «main»:
test.c:37:136: предупреждение: несовместимая неявная декларация внутренней функции «strlen» [по умолчанию включена]
PS Забыл добавить у меня Юбунта х64
Re: Ubuntu 11.10 & REJIK
Попробуйте взять Makefile отсюда: http://rejik.ru/download/redirector-3.2.10b1.tgz
Re: Ubuntu 11.10 & REJIK
Всё страньше и страньше... Скорее всего Юбунта косячит...
Нормально собирается на Fedora-16
Нормально собирается на Fedora-16
Последний раз редактировалось Ruza Пн ноя 21, 2011 12:59, всего редактировалось 1 раз.
Re: Ubuntu 11.10 & REJIK
Спасибо собралось... 3.2.10b1 пока не использовать?Slava писал(а):Попробуйте взять Makefile отсюда: http://rejik.ru/download/redirector-3.2.10b1.tgz
Правда есть одно предупреждение:
get_opt.c: В функции «get_opt»:
get_opt.c:95:10: предупреждение: ignoring return value of «fgets», declared with attribute warn_unused_result [-Wunused-result]
get_opt.c:137:10: предупреждение: ignoring return value of «fgets», declared with attribute warn_unused_result [-Wunused-result]
Re: Ubuntu 11.10 & REJIK
На Ваше усмотрение. Все же это бетта версия. С другой стороны, нареканий по ней пока нет.Ruza писал(а): Спасибо собралось... 3.2.10b1 пока не использовать?
Не существенно.Ruza писал(а): Правда есть одно предупреждение:get_opt.c: В функции «get_opt»:
get_opt.c:95:10: предупреждение: ignoring return value of «fgets», declared with attribute warn_unused_result [-Wunused-result]
get_opt.c:137:10: предупреждение: ignoring return value of «fgets», declared with attribute warn_unused_result [-Wunused-result]