[devel] [sisyphus] dbmail-2.2.4
Eugene Prokopiev
prokopiev на stc.donpac.ru
Сб Мар 31 23:32:30 MSD 2007
До сих пор я собирал dbmail не на самом свежем сизифе (октябрь 2006), и
надобности в патче почему-то не было, поэтому я прикладывал патч Алексея
вслепую. Сейчас я переехал на самый свежий сизиф, и проблема
проявилась, причем по крайней мере с 2.2.4 у меня патч, похоже, не
заработал. Пытаюсь его переписать. Исходные данные:
gcc -g -O2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-I/usr/include/gmime-2.0 -I/usr/include/glib-2.0
-I/usr/lib/glib-2.0/include -W -Wall -Wpointer-arith -Wstrict-prototypes
-o .libs/dbmail-smtp main.o -Wl,--export-dynamic -lcrypt -lgmime-2.0
-lz -lnsl -lgobject-2.0 -lglib-2.0 ./.libs/libdbmail.so -lldap
-Wl,--rpath -Wl,/usr/local/lib/dbmail
./.libs/libdbmail.so: undefined reference to `g_module_build_path'
./.libs/libdbmail.so: undefined reference to `g_module_symbol'
./.libs/libdbmail.so: undefined reference to `g_module_supported'
./.libs/libdbmail.so: undefined reference to `g_module_open'
./.libs/libdbmail.so: undefined reference to `g_module_error'
collect2: ld returned 1 exit status
make[2]: *** [dbmail-smtp] Error 1
Ищем, что прилинковать:
$ find -name *.so | xargs grep g_module_build_path
Binary file ./.libs/libdbmail.so matches
$ nm -CD ./.libs/libdbmail.so | grep g_module_build_path
U g_module_build_path
Итак, у нас в коде нет библиотек, экспортирующих g_module_build_path,
поэтому таковые следует искать в /usr/lib, в нашем случае это
libgmodule-2.0.so, т.е. дописывать надо -lgmodule-2.0
Ищем, куда дописывать:
$ find -name Makefile.am | xargs grep libdbmail_la_LIBADD
./Makefile.am:libdbmail_la_LIBADD = @MYSQLLTLIB@ @PGSQLLTLIB@
@SQLITELTLIB@ @SORTLTLIB@ @AUTHLTLIB@
Вот сюда и дописываем, запускаем:
make clean
./configure --with-mysql --with-pgsql --with-sqlite --with-auth-ldap
--with-sieve
make
результат не меняется. В старом патче -lgmodule дописывался в
AM_LDFLAGS, результат тот же. Ну а autoreconf -fisv затирает Makefile :(
Несобирающийся src.rpm отправляю в личку ...
--
С уважением, Прокопьев Евгений
Подробная информация о списке рассылки Devel