From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <460EB74E.2050200@stc.donpac.ru> Date: Sat, 31 Mar 2007 23:32:30 +0400 From: Eugene Prokopiev User-Agent: Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.7.2) Gecko/20040808 X-Accept-Language: ru-ru, ru MIME-Version: 1.0 To: ALT Devel discussion list References: <200703301449.13176.ashen@nsrz.ru> <460E58F7.8090407@stc.donpac.ru> <200703311820.23216@ruslandh> In-Reply-To: <200703311820.23216@ruslandh> Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 8bit Subject: Re: [devel] [sisyphus] dbmail-2.2.4 X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.9rc1 Precedence: list Reply-To: ALT Devel discussion list List-Id: ALT Devel discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 31 Mar 2007 19:35:04 -0000 Archived-At: List-Archive: List-Post: До сих пор я собирал 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 отправляю в личку ... -- С уважением, Прокопьев Евгений