Всем привет! Прошу вашей помощи ибо сам уже не представляю кужа копать, ваще мозг сломал ужеУстанавливаю cyrus-sasl-2.1.22.tar.gz (не спрашивайте почему из исходников)
делаю так:
./configure --enable-login --prefix=/usr --sysconfdir=/etc --with-saslauthd=/var/run/saslauthd
make
make installВ итоге библиотеки sasl ставятся в /usr/lib/sasl2/ Казалось бы все отлично, кроме одной непонятной вещи... Там отсутствует файл /usr/lib/sasl2/libsasldb.so.2, он просто вообще не создается даже при компиляции. Пробовал на другой машине с идентичной конфигурацией ОС, тем же gcc и т.д., опции компиляции те же самые - этот файл создается после компиляции в директори cyrus-sasl-2.1.22, затем по make install он его копирует в нужную папку. А на первой машине его почему-то нету...
Кто-нибудь сталкивался с подобным?Система FreeBSD-5.3, gcc-3.4.2 (на обеих машинах ОС, gcc, железо одинаковое)
>[оверквотинг удален]
>В итоге библиотеки sasl ставятся в /usr/lib/sasl2/ Казалось бы все отлично, кроме
>одной непонятной вещи... Там отсутствует файл /usr/lib/sasl2/libsasldb.so.2, он просто вообще не
>создается даже при компиляции. Пробовал на другой машине с идентичной конфигурацией
>ОС, тем же gcc и т.д., опции компиляции те же самые
>- этот файл создается после компиляции в директори cyrus-sasl-2.1.22, затем по
>make install он его копирует в нужную папку. А на первой
>машине его почему-то нету...
>Кто-нибудь сталкивался с подобным?
>
>Система FreeBSD-5.3, gcc-3.4.2 (на обеих машинах ОС, gcc, железо одинаковое)Потому что надо ставить из портов, а не заниматься извращением
Наверное не хватает зависимостей, например db. Надо смотреть лог configure и доставить чего не хватает
Там отсутствует файл /usr/lib/sasl2/libsasldb.so.2как вы это обнаружили?
то есть вряд ли после установки вы стали прверять /usr/lib/sasl2/ на наличие libsasldb.so.2
Как обнаружилось отсутствие файла и какое сообщение этому сопутствовало?P.S.
./configure --enable-login --prefix=/usr --sysconfdir=/etc --with-saslauthd=/var/run/saslauthd - Я ТОЖЕ ТАК ДЕЛАЮ (это к первому ответу)
>Там отсутствует файл /usr/lib/sasl2/libsasldb.so.2
>
>как вы это обнаружили?
>то есть вряд ли после установки вы стали прверять /usr/lib/sasl2/ на наличие
>libsasldb.so.2
>Как обнаружилось отсутствие файла и какое сообщение этому сопутствовало?
>
>P.S.
>./configure --enable-login --prefix=/usr --sysconfdir=/etc --with-saslauthd=/var/run/saslauthd - Я ТОЖЕ ТАК ДЕЛАЮ (это
>к первому ответу)Ну конечно :) Не так что установил и думаю "а проверю-ка я наличие этого файла" :)) Я собрал попытался добавить юзера через saslpasswd2, в ответ в /var/log/messages мне вывалилось:
Sep 10 10:35:48 mail saslpasswd2: could not find auxprop plugin, was searching for [all]
Sep 10 10:42:53 mail saslpasswd2: Could not find a dlname line in .la file: libsasldb.laНо 1024раза до этого так sasl собирал, все работало
Заглянул в libsasldb.la (из сообщение об ошибке), а в секции dlname там пусто, а должно быть там libsasldb.so.2 (это я на 2й идентичной машине посмотрел). Поискал этот файл, его нигде нет
>[оверквотинг удален]
>в ответ в /var/log/messages мне вывалилось:
>Sep 10 10:35:48 mail saslpasswd2: could not find auxprop plugin, was searching
>for [all]
>Sep 10 10:42:53 mail saslpasswd2: Could not find a dlname line in
>.la file: libsasldb.la
>
>Но 1024раза до этого так sasl собирал, все работало
>Заглянул в libsasldb.la (из сообщение об ошибке), а в секции dlname там
>пусто, а должно быть там libsasldb.so.2 (это я на 2й идентичной
>машине посмотрел). Поискал этот файл, его нигде нетСравнил diff'ом два config.log с разынх машин (где нормально собирается и где нет)
Там где не собирается библиотека: ld: cannot find -ldb-4.4Короче, сделал так:
/configure --sysconfdir=/usr/local/etc --with-configdir=/usr/local/lib/sasl2:/usr/local/etc/sasl2 --with-plugindir=/usr/local/lib/sasl2 --with-dbpath=/usr/local/etc/sasldb2 --includedir=/usr/local/include --enable-static --enable-auth-sasldb --with-rc4=openssl --with-saslauthd=/var/run/saslauthd --with-dblib=ndbm --without-mysql --without-pgsql --without-sqlite --enable-login --enable-ntlm --enable-gssapi --disable-krb4 --with-openssl=yes --prefix=/usr/local --enable-loginи все заработало
>[оверквотинг удален]
>
>Сравнил diff'ом два config.log с разынх машин (где нормально собирается и где
>нет)
>Там где не собирается библиотека: ld: cannot find -ldb-4.4
>
>Короче, сделал так:
>/configure --sysconfdir=/usr/local/etc --with-configdir=/usr/local/lib/sasl2:/usr/local/etc/sasl2 --with-plugindir=/usr/local/lib/sasl2 --with-dbpath=/usr/local/etc/sasldb2 --includedir=/usr/local/include --enable-static --enable-auth-sasldb --with-rc4=openssl --with-saslauthd=/var/run/saslauthd --with-dblib=ndbm --without-mysql
>--without-pgsql --without-sqlite --enable-login --enable-ntlm --enable-gssapi --disable-krb4 --with-openssl=yes --prefix=/usr/local --enable-login
>
>и все заработалоЭто одевание штанов через голову!!! Народ не делайте так. При установке из портов, все зависимости устанавливаются автоматически.
Любит же наш народ сам придумывать себе проблемы
во, молодец! поздравляю
а я погуглила, там тоже на DB ссылались
ну и, конечно, не могу не запостить это в свой FAQ ДЛЯ БУДУЩИХ ПОКОЛЕНИЙ;), ТАК ЧТО СПАСИБО ЗА РЕШЕНИЕ
>во, молодец! поздравляю
>а я погуглила, там тоже на DB ссылались
>ну и, конечно, не могу не запостить это в свой FAQ ДЛЯ
>БУДУЩИХ ПОКОЛЕНИЙ;), ТАК ЧТО СПАСИБО ЗА РЕШЕНИЕВидимо на другой машине ld по-другому линкует