Алексей Киреев wrote:
> Здравствуйте.

приветствую

> Не получается собрать exim в debian для работы с dlopen. В логах:
> 
> 2012-02-23 21:48:46 1S0cmP-0004xo-R5 dlopen "/usr/lib/exim-dlfunc.so" failed: 
> /usr/lib/exim-dlfunc.so: undefined symbol: split_spool_directory

исходники exim'а доступны на момент сборки dlfunc? в соседнем письме
Лена в строке сборки указала
-I/usr/ports/mail/exim/work/exim-4.77/build-FreeBSD-i386
-L/usr/local/lib - это именно то, о чем я пишу.

если исходники exim'а на момент сборки доступны, то есть еще одна не
совсем очевидная причина вышеуказанной проблемы.

подобная проблема может проявляться, если exim собран без поддержки perl'а.

чуть больше года назад эта проблема уже обсуждалась в листе:
http://mailground.net/pipermail/exim-users/2011-January/000242.html

> Пытался сделать следующее (ситуация один в один с той, что описана тут - 
> http://comments.gmane.org/gmane.mail.exim.user/80545):
> 
> EXTRALIBS=-lpam --export-dynamic - ошибка та же
> 
> EXTRALIBS=-lpam --export-dynamic -ldl - ошибка та же
> 
> EXTRALIBS=-lpam --export-dynamic -export-dynamic - ошибка та же
> 
> EXTRALIBS=-lpam -export-dynamic -shared - тут экзим вообще не работает, 
> падает в корку
> 
> EXTRALIBS=-Wl,-E -lpam -export-dynamic - ошибка та же
> 
> Для проверки, что вообще флаги принимают участие - сделал:
> 
> EXTRALIBS=-lpam -export-dynamic -lek-flag, компиляция завершилась ошибкой:
> 
> ...
> gcc -o exim
> /usr/bin/ld: cannot find -lek-flag
> collect2: ld returned 1 exit status
> make[1]: *** [exim] Error 1
> make[1]: Leaving directory 
> `/usr/local/src/deb/exim-dlfunc/exim4-4.72/build-tree/build-Linux-i386'
> make: *** [build-exim4-daemon-custom/exim] Ошибка 2
> dpkg-buildpackage: ошибка: debian/rules build возвратил код ошибки 2
> 
> Что посоветуете?

вот другой рабочий пример сборки dlfunc на FreeBSD с двумя функциями:

gcc -c -O2 -shared
-I/usr/ports/mail/exim/work/exim-4.77/build-FreeBSD-i386
-I/usr/local/include -fPIC -g ip2country.c -o ip2country.o
gcc -c -O2 -shared
-I/usr/ports/mail/exim/work/exim-4.77/build-FreeBSD-i386
-I/usr/local/include -fPIC -g rspamd.c -o rspamd.o
gcc -O2 -shared -I/usr/ports/mail/exim/work/exim-4.77/build-FreeBSD-i386
-I/usr/local/include -fPIC -g -o exim-dlfunc.so -L/usr/local/lib -lGeoIP
ip2country.o rspamd.o



-- 
Best wishes Victor Ustugov   mailto:[email protected]
public GnuPG/PGP key:        http://victor.corvax.kiev.ua/corvax.asc
ICQ UIN: 77186900, 371808614 nic-handle: CRV-UANIC

_______________________________________________
Exim-users mailing list
[email protected]
http://mailground.net/mailman/listinfo/exim-users

Ответить