Всем привет. Вот такая проблема. Некоторые программки (FreeRadius) требуют libmysqlclient.so. С какими флагами нужно собирать mysql, чтобы получить этот файлик. По умолчанию собираются только файлы с расширением *.а. FreeBSD 5.3
Зараннее спасибо за ответы.
>Всем привет. Вот такая проблема. Некоторые программки (FreeRadius) требуют libmysqlclient.so. С какими
>флагами нужно собирать mysql, чтобы получить этот файлик. По умолчанию собираются
>только файлы с расширением *.а. FreeBSD 5.3чего-чего?
[unix1]~ > ls -la /usr/local/lib/mysql/ | grep .so
lrwxr-xr-x 1 root wheel 20 14 сен 2004 libmysqlclient.so -> libmysqlclient.so.10
-rwxr-xr-x 1 root wheel 252969 14 сен 2004 libmysqlclient.so.10
lrwxr-xr-x 1 root wheel 22 14 сен 2004 libmysqlclient_r.so -> libmysqlclient_r.so.10
-rwxr-xr-x 1 root wheel 257880 14 сен 2004 libmysqlclient_r.so.10
[unix1]~ > uname -rs
FreeBSD 4.10-RELEASE-p4
[unix1]~ >[lavr]~ > ls -la /usr/local/lib/mysql/ | grep .so
lrwxr-xr-x 1 root wheel 20 30 мар 13:27 libmysqlclient.so -> libmysqlclient.so.12
-rwxr-xr-x 1 root wheel 267220 30 мар 13:27 libmysqlclient.so.12
lrwxr-xr-x 1 root wheel 22 30 мар 13:27 libmysqlclient_r.so -> libmysqlclient_r.so.12
-rwxr-xr-x 1 root wheel 275867 30 мар 13:27 libmysqlclient_r.so.12
[lavr]~ > uname -rs
FreeBSD 5.3-RELEASE-p9
[lavr]~ >Как это: "вы просто их готовить не умеете"
из портов устанавливаешь КЛИЕНТА mysql нужной версии и все.
>Зараннее спасибо за ответы.
>
>Как это: "вы просто их готовить не умеете"
>А вот Вы бы подсказали как. Я ставил не из портов, а ./confiure && make && make install. Вот заглянул сейчас в портовый Makefile, а там такое:
--without-debug \
--without-readline \
--without-libedit \
--without-bench \
--without-extra-tools \
--with-libwrap \
--with-mysqlfs \
--with-vio \
--with-low-memory \
--with-comment='FreeBSD port: ${PKGNAME}' \
--enable-thread-safe-client
Как я понимаю, одна из этих опций должна повлиять на появление библиотек .so. Подскажите, так ли это, и, если да, то какая именно.
>>
>>Как это: "вы просто их готовить не умеете"
>>
>
>А вот Вы бы подсказали как. Я ставил не из портов, а
>./confiure && make && make install. Вот заглянул сейчас в портовый
>Makefile, а там такое:
>--without-debug \
>--without-readline \
>--without-libedit \
>--without-bench \
>--without-extra-tools \
>--with-libwrap \
>--with-mysqlfs \
>--with-vio \
>--with-low-memory \
>--with-comment='FreeBSD port: ${PKGNAME}' \
>--enable-thread-safe-client
>Как я понимаю, одна из этих опций должна повлиять на появление библиотек
>.so. Подскажите, так ли это, и, если да, то какая именно.
>
нет, by default configure должен создать Makefiles c опциями линкера
для построения динамических библиотек.
Я так понимаю политику партии - есть силы для установки из sources, должны
быть силы для прочтения документации внутри sources, там ВСЕ есть что
нужно для сборки, как и в .configure --help | lessСборка из портов - это такая же сборка как из sources, только накладываются патчи характерные КОНКРЕТНО для FreeBSD и если хочется
некоторых своих ключей, их можно задать или изменить в Makefile порта.Ко всему прочему, в свежих портах есть самые свежие версии mysql!
И недавно РЕКОМЕНДОВАННЫЙ maintaner'ом стал 4.1.11 как default (На mysql.org 4.1.x ветка "относительно" недавно стала РЕКОМЕНДОВАННОЙ к production)
>>
>>Как это: "вы просто их готовить не умеете"
>>
>
>А вот Вы бы подсказали как. Я ставил не из портов, а
>./confiure && make && make install. Вот заглянул сейчас в портовый
>Makefile, а там такое:
>--without-debug \
>--without-readline \
>--without-libedit \
>--without-bench \
>--without-extra-tools \
>--with-libwrap \
>--with-mysqlfs \
>--with-vio \
>--with-low-memory \
>--with-comment='FreeBSD port: ${PKGNAME}' \
>--enable-thread-safe-client
>Как я понимаю, одна из этих опций должна повлиять на появление библиотек
>.so. Подскажите, так ли это, и, если да, то какая именно.
>
Добавь --enable-shared
Ура. Проблема решена. --with-client-ldflags=-all-static