elderstar Posted January 10, 2008 Posted January 10, 2008 хотелоь бы услышать.. вчера попытался поставить 2.404 на линух ФС6/частично 8ю скомпилилось и поставилось вроде нормально, но при запуске выдало: Storage plugin loading failed: /usr/lib/stg/mod_store_mysql.so: undefined symbol: _Z9strtoull2PKcRy :-/ :-/ :-/ :-/
Max Posted January 10, 2008 Posted January 10, 2008 хотелоь бы услышать..вчера попытался поставить 2.402 на линух ФС6/частично 8ю скомпилилось и поставилось вроде нормально, но при запуске выдало: Storage plugin loading failed: /usr/lib/stg/mod_store_mysql.so: undefined symbol: _Z9strtoull2PKcRy :-/ :-/ :-/ :-/ старая версия стг или сильно новая
elderstar Posted January 11, 2008 Author Posted January 11, 2008 Извиняюсь..опечатся 2.404 версия..хочется всётаки услышать отзывы
madf Posted January 11, 2008 Posted January 11, 2008 Старая версия плагина мускула. Проверьте чтобы стг грузил свой собственный плагин.
elderstar Posted January 12, 2008 Author Posted January 12, 2008 Итак..помучавшись немного пришел к неутешительным результатам: ось ФС6, 5 0 22 мускул старгазер компилируется, устанавливается успешно, но модуль мускула не устанавливается и не компилируется...пытался делать отдельно gmake/make в .store/mysql - ничего..только куча ошибок.. может как то надо задать старгазеру, чтб он компилился с мускулом? Подскажите
elderstar Posted January 15, 2008 Author Posted January 15, 2008 Вообще никак...ни единого варнинга.. но подозрительно то, на мой взгляд, что после ./install не вылетает стандартное: ############# installed /etc/stargazer -settings ................ ############### после ./build debug ....................... g++ -c traffcounter.cpp -g3 -I/usr/local/include -Wall -I /home/stg-2.404.9.7.sr c/stg-2.404.9.7/projects/stargazer/../../include -DDEBUG -DLINUX g++ -c user.cpp -g3 -I/usr/local/include -Wall -I /home/stg-2.404.9.7.src/stg-2. 404.9.7/projects/stargazer/../../include -DDEBUG -DLINUX g++ -c user_property.cpp -g3 -I/usr/local/include -Wall -I /home/stg-2.404.9.7.s rc/stg-2.404.9.7/projects/stargazer/../../include -DDEBUG -DLINUX g++ -c users.cpp -g3 -I/usr/local/include -Wall -I /home/stg-2.404.9.7.src/stg-2 .404.9.7/projects/stargazer/../../include -DDEBUG -DLINUX g++ -c plugin_runner.cpp -g3 -I/usr/local/include -Wall -I /home/stg-2.404.9.7.s rc/stg-2.404.9.7/projects/stargazer/../../include -DDEBUG -DLINUX g++ admin.o admins.o main.o curr_ip.o settings.o stg_timer.o tariff.o tariffs.o traffcounter.o user.o user_property.o users.o plugin_runner.o /home/stg-2.404.9. 7.src/stg-2.404.9.7/projects/stargazer/../../lib/libstg_logger.so /home/stg-2.40 4.9.7.src/stg-2.404.9.7/projects/stargazer/../../lib/libstg_locker.so /home/stg- 2.404.9.7.src/stg-2.404.9.7/projects/stargazer/../../lib/libstg_common.so /home/ stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/../../lib/libscript_executer. so /home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/../../lib/libdotconf pp.so /usr/lib/libexpat.so /usr/lib/libpthread.so /usr/lib/libdl.so -g3 -I/usr/l ocal/include -Wall -L/usr/local/lib -Wl,-E -L/home/stg-2.404.9.7.src/stg-2.404.9 .7/projects/stargazer/../../lib -Wl,-rpath,/usr/lib/stg -Wl,-rpath-link,/home/st g-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/../../lib -o stargazer make install [root@ftp stargazer]# make install mkdir -m 0755 -p /usr/sbin install -m 0755 -o root -s stargazer /usr/sbin/stargazer make -C /home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/../../stglibs install make[1]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs' make install -C stg_logger.lib make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/stg_logger.lib' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s libstg_logger.so /usr/lib/stg/libstg_logger.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/stg_logger.lib' make install -C stg_locker.lib make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/stg_locker.lib' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s libstg_locker.so /usr/lib/stg/libstg_locker.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/stg_locker.lib' make install -C crypto.lib make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/crypto.lib' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s libstg_crypto.so /usr/lib/stg/libstg_crypto.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/crypto.lib' make install -C common.lib make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/common.lib' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s libstg_common.so /usr/lib/stg/libstg_common.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/common.lib' make install -C script_executer.lib make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/script_executer.lib' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s libscript_executer.so /usr/lib/stg/libscript_executer.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/script_executer.lib' make install -C conffiles.lib make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/conffiles.lib' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s libconffiles.so /usr/lib/stg/libconffiles.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/conffiles.lib' make install -C hostallow.lib make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/hostallow.lib' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s libhostallow.so /usr/lib/stg/libhostallow.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/hostallow.lib' make install -C pinger.lib make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/pinger.lib' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s libstg_pinger.so /usr/lib/stg/libstg_pinger.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/pinger.lib' make install -C dotconfpp.lib make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/dotconfpp.lib' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s libdotconfpp.so /usr/lib/stg/libdotconfpp.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs/dotconfpp.lib' make[1]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/stglibs' make -C /home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins install make[1]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins' make install -C authorization/ao make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/authorization/ao' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s mod_auth_ao.so /usr/lib/stg/mod_auth_ao.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/authorization/ao' make install -C authorization/inetaccess make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/authorization/inetaccess' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s mod_auth_ia.so /usr/lib/stg/mod_auth_ia.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/authorization/inetaccess' make install -C configuration/sgconfig make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/configuration/sgconfig' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s mod_conf_sg.so /usr/lib/stg/mod_conf_sg.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/configuration/sgconfig' make install -C other/ping make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/other/ping' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s mod_ping.so /usr/lib/stg/mod_ping.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/other/ping' make install -C other/rscript make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/other/rscript' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s mod_remote_script.so /usr/lib/stg/mod_remote_script.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/other/rscript' make install -C store/files make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/store/files' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s mod_store_files.so /usr/lib/stg/mod_store_files.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/store/files' make install -C capture/ether_linux make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/capture/ether_linux' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s mod_cap_ether.so /usr/lib/stg/mod_cap_ether.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/capture/ether_linux' make install -C capture/ipq_linux make[2]: Entering directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/capture/ipq_linux' mkdir -m 0755 -p /usr/lib/stg install -m 0755 -o root -s mod_cap_ipq.so /usr/lib/stg/mod_cap_ipq.so make[2]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins/capture/ipq_linux' make[1]: Leaving directory `/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/plugins' # Install etc mkdir -m 0644 -p /etc/stargazer install -m 0644 -o root ./inst/linux/etc/stargazer/stargazer.conf /etc/stargazer/stargazer.conf install -m 0644 -o root ./inst/linux/etc/stargazer/rules /etc/stargazer/rules install -m 0755 -o root ./inst/linux/etc/stargazer/On* /etc/stargazer/ # Install file db mkdir -m 0644 -p /var/stargazer/admins mkdir -m 0644 -p /var/stargazer/tariffs mkdir -m 0644 -p /var/stargazer/users/test install -m 0644 -o root ./inst/var/stargazer/admins/admin.adm /var/stargazer/admins/admin.adm install -m 0644 -o root ./inst/var/stargazer/tariffs/tariff.tf /var/stargazer/tariffs/tariff.tf install -m 0644 -o root ./inst/var/stargazer/users/test/conf /var/stargazer/users/test/conf install -m 0644 -o root ./inst/var/stargazer/users/test/stat /var/stargazer/users/test/stat
elderstar Posted January 15, 2008 Author Posted January 15, 2008 Проверил /usr/lib/stg модуля mysql_store.so нету... вообще он, в /plugins/store/mysql не создался.. сделал отдельно make там: g++ -c mysql_store.cpp -g3 -I/usr/local/include -Wall -fPIC -I /home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/../../include -DDEBUG -DLINUX mysql_store.cpp:5:25: error: mysql/mysql.h: Нет такого файла или каталога mysql_store.cpp:6:26: error: mysql/errmsg.h: Нет такого файла или каталога mysql_store.h:126: error: 'MYSQL' has not been declared mysql_store.h:127: error: 'MYSQL' has not been declared mysql_store.h:130: error: 'MYSQL' has not been declared mysql_store.h:131: error: 'MYSQL' has not been declared mysql_store.h:133: error: ISO C++ forbids declaration of 'MYSQL' with no type mysql_store.h:133: error: expected ';' before '*' token mysql_store.cpp:210: error: 'MYSQL' has not been declared mysql_store.cpp: In member function 'int MYSQL_STORE::MysqlQuery(const char*, int*) const': mysql_store.cpp:214: error: 'mysql_query' was not declared in this scope mysql_store.cpp: In member function 'virtual int MYSQL_STORE::ParseSettings()': mysql_store.cpp:233: error: 'MYSQL' was not declared in this scope mysql_store.cpp:233: error: expected `;' before 'mysql' mysql_store.cpp:234: error: 'sock' was not declared in this scope mysql_store.cpp:235: error: 'mysql' was not declared in this scope mysql_store.cpp:235: error: 'mysql_init' was not declared in this scope mysql_store.cpp:248: error: 'mysql_real_connect' was not declared in this scope mysql_store.cpp:251: error: 'mysql_error' was not declared in this scope mysql_store.cpp:252: error: 'mysql_close' was not declared in this scope mysql_store.cpp:257: error: 'mysql_select_db' was not declared in this scope mysql_store.cpp:264: error: 'mysql_error' was not declared in this scope mysql_store.cpp:265: error: 'mysql_close' was not declared in this scope mysql_store.cpp:273: error: 'mysql_error' was not declared in this scope mysql_store.cpp:274: error: 'mysql_close' was not declared in this scope mysql_store.cpp:282: error: 'mysql_close' was not declared in this scope mysql_store.cpp: At global scope: mysql_store.cpp:299: error: 'MYSQL' has not been declared mysql_store.cpp: In member function 'bool MYSQL_STORE::IsTablePresent(const std::string&, int*)': mysql_store.cpp:301: error: 'MYSQL_RES' was not declared in this scope mysql_store.cpp:301: error: 'result' was not declared in this scope mysql_store.cpp:303: error: 'mysql_list_tables' was not declared in this scope mysql_store.cpp:306: error: 'mysql_error' was not declared in this scope mysql_store.cpp:307: error: 'mysql_close' was not declared in this scope mysql_store.cpp:311: error: 'mysql_num_rows' was not declared in this scope mysql_store.cpp:314: error: 'mysql_free_result' was not declared in this scope mysql_store.cpp: At global scope: mysql_store.cpp:319: error: 'int MYSQL_STORE::CheckAllTables' is not a static member of 'class MYSQL_STORE' mysql_store.cpp:319: error: 'MYSQL' was not declared in this scope mysql_store.cpp:319: error: 'sock' was not declared in this scope mysql_store.cpp:320: error: expected ',' or ';' before '{' token make: *** [mysql_store.o] Ошибка 1
elderstar Posted January 16, 2008 Author Posted January 16, 2008 разрабы..плз! отзовитесь! Всё ужасно или может еще хуже? :-/ :halloween:
madf Posted January 16, 2008 Posted January 16, 2008 Раз модуль не собрался и не собирается вручную - значит компилятор не видит быблиотеки libmysqlclient.so Варианты: 1. MySQL установлен, но по префиксу /usr/local. Решение: сделать симлинк заголовочных файлов MySQL из /usr/local/include в /usr/include; сделать симлинк клиентской библиотеки /usr/local/lib/libmysqlclient.so в /usr/lib 2. MySQL не установлен. Решение: установить его
den68 Posted January 16, 2008 Posted January 16, 2008 Взять Makefile и буилд из архива Макса и положить вместо имеющихся в директорию .plugins/store/store_mysql.
madf Posted January 16, 2008 Posted January 16, 2008 Взять Makefile и буилд из архива Макса и положить вместо имеющихся в директорию .plugins/store/store_mysql. Не советую. К чему это может привести - неизвестно
elderstar Posted January 16, 2008 Author Posted January 16, 2008 Вобщем, так... к mysqlclient надо бы в доке дописать mysql-devel сделал как сказал madf..файлы лежали в /usr/lib/mysql типа того Итог манипуляций(ржу): make: *** Нет правила для сборки цели `-lmysqlclient', требуемой для `mod_store_mysql.so'. Останов.
madf Posted January 16, 2008 Posted January 16, 2008 ...Итог манипуляций(ржу): make: *** Нет правила для сборки цели `-lmysqlclient', требуемой для `mod_store_mysql.so'. Останов. Ну, собсно, то-же самое. По известным компилятору путям библиотека не найдена, а make не знает как ее собрать. Вобще говоря, не понял, как так получилось, что build разрешил сборку модуля mysql, а сам модуль собраться не может. Подозрительно, однако! Покажи, плз, файлик Makefile.conf (он должен быть в самом корне) и вывод команды ldconfig -p | grep mysql
Alferov Posted January 16, 2008 Posted January 16, 2008 Пример моего projects/stargazer/plugins/store/mysql/Makefile include ../../../../../Makefile.conf PROG = mod_store_mysql.so SRCS = ./mysql_store.cpp #LIBS = -lconffiles -lstg_common #LIBS = -lmysqlclient include ../../Makefile.in SEARCH_DIRS += -I /usr/local/include/mysql LDFLAGS += -lmysqlclient -L /usr/local/lib/mysql
elderstar Posted January 17, 2008 Author Posted January 17, 2008 include ../../../../../Makefile.conf PROG = mod_store_mysql.so SRCS = ./mysql_store.cpp #LIBS = -lconffiles -lstg_common LIBS = -lmysqlclient include ../../Makefile.in ............ :-/ :-/ :-/
elderstar Posted January 17, 2008 Author Posted January 17, 2008 скопировал конфиг alferov-a и поправил пути итог: make g++ -c mysql_store.cpp -g3 -I/usr/local/include -Wall -fPIC -I /home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/../../include -I /usr/include -DDEBUG -DLINUX g++ mysql_store.o -L/usr/local/lib -shared -L/home/stg-2.404.9.7.src/stg-2.404.9.7/projects/stargazer/../../lib -Wl,-rpath,/usr/lib/stg -lmysqlclient -L /usr/lib -o mod_store_mysql.so /usr/bin/ld: cannot find -lmysqlclient collect2: ld returned 1 exit status make: *** [mod_store_mysql.so] Ошибка 1
elderstar Posted January 17, 2008 Author Posted January 17, 2008 Модуль скомпилился.. include ../../../../../Makefile.conf PROG = mod_store_mysql.so SRCS = ./mysql_store.cpp #LIBS = -lconffiles -lstg_common #LIBS = -lmysqlclient include ../../Makefile.in SEARCH_DIRS += -I /usr/include LDFLAGS += - /usr/lib/libmysqlclient.so.10.0.0 -L /usr/lib В последней строке пришлось прописывать всё явно
elderstar Posted January 17, 2008 Author Posted January 17, 2008 новая напасть: /usr/sbin/stargazer start /etc/stargazer stg_timer.cpp > 10:49:25 > STG_TIMER started. Time: 1200559765 main.cpp > 10:49:25 > LoadStoragePlugin error main.cpp > 10:49:26 > KillExecuters pid=3752 в логе: Stg v. Stg 2.404 2008-01-17 10:49:25 -- Message queue created successfully. msgKey=5555 msgID=196608 2008-01-17 10:49:25 -- Timer thread started successfully. 2008-01-17 10:49:25 -- Storage plugin loading failed: /usr/lib/stg/mod_store_mysql.so: undefined symbol: mysql_select_db 2008-01-17 10:49:25 -- Load StoragePlugin error. 2008-01-17 10:49:26 -- Queue removed successfully. 2008-01-17 10:49:26 -- StgTimer: Stop successfull. 2008-01-17 10:49:26 -- Stg stopped successfully.
elderstar Posted January 17, 2008 Author Posted January 17, 2008 мля...моя невнимательность меня убьет: правильно LDFLAGS += /usr/lib/libmysqlclient.so.10.0.0 -L /usr/lib
madf Posted January 17, 2008 Posted January 17, 2008 LDFLAGS += /usr/lib/libmysqlclient.so.10.0.0 -L /usr/lib Плохое решение. Все-таки приведите вывод ldconfig -p | grep mysql
elderstar Posted January 17, 2008 Author Posted January 17, 2008 libmysqlclient_r.so.15 (libc6) => /usr/lib/mysql/libmysqlclient_r.so.15 libmysqlclient_r.so.10 (libc6) => /usr/lib/mysql/libmysqlclient_r.so.10 libmysqlclient.so.15 (libc6) => /usr/lib/mysql/libmysqlclient.so.15 libmysqlclient.so.10 (libc6) => /usr/lib/mysql/libmysqlclient.so.10
den68 Posted January 17, 2008 Posted January 17, 2008 libmysqlclient_r.so.15 (libc6) => /usr/lib/mysql/libmysqlclient_r.so.15 libmysqlclient_r.so.10 (libc6) => /usr/lib/mysql/libmysqlclient_r.so.10 libmysqlclient.so.15 (libc6) => /usr/lib/mysql/libmysqlclient.so.15 libmysqlclient.so.10 (libc6) => /usr/lib/mysql/libmysqlclient.so.10 Ну так тамже написано: LDFLAGS += -l mysqlclient -L/usr/lib/mysql/
elderstar Posted January 17, 2008 Author Posted January 17, 2008 может и написано - но это ни к чему не приводит еще надо поменять пути на флагах в makefile.conf..там =/usr/local.... прибиваем local
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now