The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Ошибки компиляции iserverd"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (Компиляция)
Изначальное сообщение [ Отслеживать ]

"Ошибки компиляции iserverd"  +/
Сообщение от Shumaherf1 (ok) on 31-Май-11, 13:09 
Стоит линукс Open Suse 11.1 (Текстовый режим)
Проблема следующая - ставлю асечный сервер iserverd http://iserverd.khstu.ru/russian/install.html
Пакет IServerd-2.0.0.tar.gz разархивировал, configure проходит нормально не ругается.
Но make all даёт такие ошибки:
g++ -I. -DHAVE_CONFIG_H -Iinclude/ -Itvision/  -I/var/lib/pgsql/ -I/var/lib/pgsql//libpq  -DVAR_DIR=/var/run/iserverd -DBIN_DIR=/usr/bin -DETC_DIR=/etc/iserverd -DLOG_DIR=/var/log/iserverd -c system/daemon.cpp -o system/daemon.o
In file included from system/daemon.cpp:34:
include/includes.h:157:22: error: libpq-fe.h: No such file or directory
include/includes.h:158:22: error: libpq-fs.h: No such file or directory
In file included from include/includes.h:161,
                 from system/daemon.cpp:34:
include/public.h:84: error: expected initializer before ‘*’ token
In file included from include/proto.h:449,
                 from include/includes.h:162,
                 from system/daemon.cpp:34:
./database/db_proto.h:94: error: ‘PGresult’ was not declared in this scope
./database/db_proto.h:94: error: ‘res’ was not declared in this scope
./database/db_proto.h:94: error: expected primary-expression before ‘unsigned’
./database/db_proto.h:94: error: expected primary-expression before ‘unsigned’
./database/db_proto.h:94: error: initializer expression list treated as compound expression
./database/db_proto.h:104: error: ‘PGconn’ was not declared in this scope
./database/db_proto.h:104: error: ‘dbconn’ was not declared in this scope
./database/db_proto.h:104: error: expected primary-expression before ‘char’
./database/db_proto.h:104: error: expected primary-expression before ‘int’
./database/db_proto.h:104: error: initializer expression list treated as compound expression
./database/db_proto.h:105: error: ‘PGconn’ was not declared in this scope
./database/db_proto.h:105: error: ‘dbconn’ was not declared in this scope
./database/db_proto.h:105: error: expected primary-expression before ‘char’
./database/db_proto.h:105: error: expected primary-expression before ‘int’
./database/db_proto.h:105: error: initializer expression list treated as compound expression
./database/db_proto.h:106: error: ‘PGconn’ was not declared in this scope
./database/db_proto.h:106: error: ‘dbconn’ was not declared in this scope
./database/db_proto.h:106: error: expected primary-expression before ‘char’
./database/db_proto.h:106: error: initializer expression list treated as compound expression
./database/db_proto.h:107: error: ‘PGconn’ was not declared in this scope
./database/db_proto.h:107: error: ‘dbconn’ was not declared in this scope
./database/db_proto.h:107: error: expected primary-expression before ‘char’
./database/db_proto.h:107: error: expected primary-expression before ‘char’
./database/db_proto.h:107: error: initializer expression list treated as compound expression
./database/db_proto.h:108: error: ‘PGconn’ was not declared in this scope
./database/db_proto.h:108: error: ‘dbconn’ was not declared in this scope
./database/db_proto.h:108: error: expected primary-expression before ‘char’
./database/db_proto.h:108: error: initializer expression list treated as compound expression
./database/db_proto.h:111: error: ‘PGresult’ was not declared in this scope
./database/db_proto.h:111: error: ‘res’ was not declared in this scope
./database/db_proto.h:111: error: expected primary-expression before ‘char’
./database/db_proto.h:111: error: initializer expression list treated as compound expression
system/daemon.cpp: In function ‘BOOL write_pid()’:
system/daemon.cpp:48: warning: deprecated conversion from string constant to ‘char*’
system/daemon.cpp:48: warning: deprecated conversion from string constant to ‘char*’
system/daemon.cpp:48: warning: deprecated conversion from string constant to ‘char*’
system/daemon.cpp:55: warning: deprecated conversion from string constant to ‘char*’
system/daemon.cpp:55: warning: deprecated conversion from string constant to ‘char*’
system/daemon.cpp:55: warning: deprecated conversion from string constant to ‘char*’
system/daemon.cpp:63: warning: deprecated conversion from string constant to ‘char*’
system/daemon.cpp:63: warning: deprecated conversion from string constant to ‘char*’
system/daemon.cpp:63: warning: deprecated conversion from string constant to ‘char*’
system/daemon.cpp: In function ‘int become_daemon()’:
system/daemon.cpp:77: warning: deprecated conversion from string constant to ‘char*’
system/daemon.cpp:82: warning: deprecated conversion from string constant to ‘char*’
system/daemon.cpp:96: warning: deprecated conversion from string constant to ‘char*’
system/daemon.cpp:101: warning: deprecated conversion from string constant to ‘char*’
make: *** [system/daemon.o] Error 1

Видел подобную тему здесь: http://forum.ubuntu.ru/index.php?topic=20495.0
вот что писали:
"помести в директорию_откуда_инсталишь/include файлы libpq-fe.h libpq-fs.h postgres_ext.h
после этого у меня скомпилилось только что"

Но у меня этих файлов (libpq-fe.h libpq-fs.h postgres_ext.h) нет.
Поидее они должны появиться после установки libpq-dev, но они так и не появились. Может потому что у меня libpq.so.5.1     а надо 3 версию.
Что посоветуете, что скачать или что изменить для правильной компиляции

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Ошибки компиляции iserverd"  +/
Сообщение от ImPressed (ok) on 31-Май-11, 19:39 
>[оверквотинг удален]
> make: *** [system/daemon.o] Error 1
> Видел подобную тему здесь: http://forum.ubuntu.ru/index.php?topic=20495.0
> вот что писали:
> "помести в директорию_откуда_инсталишь/include файлы libpq-fe.h libpq-fs.h postgres_ext.h
> после этого у меня скомпилилось только что"
> Но у меня этих файлов (libpq-fe.h libpq-fs.h postgres_ext.h) нет.
> Поидее они должны появиться после установки libpq-dev, но они так и не
> появились. Может потому что у меня libpq.so.5.1    
> а надо 3 версию.
> Что посоветуете, что скачать или что изменить для правильной компиляции

Раз этих файлов нет, значит надо установить пакет с клиентом PostgreSQL и пакет разработчика PostgreSQL И будет вам щасте. Судя по названиям файлов оно хочет клиент Postgre версии <= 8.1.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Ошибки компиляции iserverd"  +/
Сообщение от Shumaherf1 (ok) on 01-Июн-11, 11:15 
Вобщем нашел libpq и файлы libpq-fe.h libpq-fs.h postgres_ext.h  скопировал
Компиляция запустилась, но постоянно возникали ошибки, вот что выдает:

database/defrag_db.cpp:423: warning: deprecated conversion from string constant to ‘char*’
database/defrag_db.cpp:423: warning: deprecated conversion from string constant to ‘char*’
database/defrag_db.cpp:432: warning: deprecated conversion from string constant to ‘char*’
g++ -I. -DHAVE_CONFIG_H -g -O2 -Iinclude/ -Itvision/  -I/var/lib/pgsql/ -I/var/lib/pgsql//libpq  -DVAR_DIR=/var/run/iserverd -DBIN_DIR=/usr/bin -DETC_DIR=/etc/iserverd -DLOG_DIR=/var/log/iserverd -Wno-deprecated -c database/cookies_db.cpp -o database/cookies_db.o
database/cookies_db.cpp: In function ‘int db_cookie_insert(long unsigned int, char*, short unsigned int)’:
database/cookies_db.cpp:45: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp:50: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp: In function ‘int db_cookie_delete(long unsigned int)’:
database/cookies_db.cpp:72: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp:77: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp: In function ‘int db_cookie_delete(char*)’:
database/cookies_db.cpp:104: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp:109: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp: In function ‘long unsigned int db_cookie_check(char*)’:
database/cookies_db.cpp:141: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp:146: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp:152: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp: In function ‘int db_cookie_get(long unsigned int, char*, short unsigned int&, short unsigned int)’:
database/cookies_db.cpp:186: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp:191: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp:197: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp: In function ‘void db_cookie_use(long unsigned int)’:
database/cookies_db.cpp:227: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp:232: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp: In function ‘void db_cookie_use(char*)’:
database/cookies_db.cpp:259: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp:264: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp: In function ‘void db_cookie_check_expired()’:
database/cookies_db.cpp:292: warning: deprecated conversion from string constant to ‘char*’
database/cookies_db.cpp:297: warning: deprecated conversion from string constant to ‘char*’
g++ -I. -DHAVE_CONFIG_H -g -O2 -Iinclude/ -Itvision/  -I/var/lib/pgsql/ -I/var/lib/pgsql//libpq  -DVAR_DIR=/var/run/iserverd -DBIN_DIR=/usr/bin -DETC_DIR=/etc/iserverd -DLOG_DIR=/var/log/iserverd -Wno-deprecated -c database/error_db.cpp -o database/error_db.o
database/error_db.cpp: In function ‘int handle_database_error(PGresult*, char*)’:
database/error_db.cpp:40: error: using typedef-name ‘ExecStatusType’ after ‘enum’
/usr/include/libpq-fe.h:84: error: ‘ExecStatusType’ has a previous declaration here
database/error_db.cpp:40: error: invalid type in declaration before ‘;’ token
database/error_db.cpp:50: warning: deprecated conversion from string constant to ‘char*’
database/error_db.cpp:51: warning: deprecated conversion from string constant to ‘char*’
database/error_db.cpp:52: warning: deprecated conversion from string constant to ‘char*’
database/error_db.cpp:58: warning: deprecated conversion from string constant to ‘char*’
database/error_db.cpp:67: warning: deprecated conversion from string constant to ‘char*’
database/error_db.cpp:70: warning: deprecated conversion from string constant to ‘char*’
database/error_db.cpp: In function ‘void uNoticeStub(void*, const char*)’:
database/error_db.cpp:93: warning: deprecated conversion from string constant to ‘char*’
database/error_db.cpp:93: warning: deprecated conversion from string constant to ‘char*’
database/error_db.cpp:93: warning: deprecated conversion from string constant to ‘char*’
database/error_db.cpp:103: warning: deprecated conversion from string constant to ‘char*’
database/error_db.cpp:113: warning: deprecated conversion from string constant to ‘char*’
database/error_db.cpp:122: warning: deprecated conversion from string constant to ‘char*’
database/error_db.cpp: In function ‘void wait_for_database()’:
database/error_db.cpp:159: warning: deprecated conversion from string constant to ‘char*’
database/error_db.cpp:167: warning: deprecated conversion from string constant to ‘char*’
make: *** [database/error_db.o] Error 1


Что теперь посоветуете

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "шибки компиля"  +/
Сообщение от Andrey Mitrofanov on 01-Июн-11, 11:54 
Бедный, тяжело жить забаненным Гуглем? Вот злыдни-то!?

-Wno-write-strings и ещё к-у-у-уча вариантов изворотов:
http://stackoverflow.com/questions/59670/how-to-get-rid-of-d...

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "шибки компиля"  +/
Сообщение от Shumaherf1 (ok) on 01-Июн-11, 12:07 
> Бедный, тяжело жить забаненным Гуглем? Вот злыдни-то!?
> -Wno-write-strings и ещё к-у-у-уча вариантов изворотов:
> http://stackoverflow.com/questions/59670/how-to-get-rid-of-d...

Я к сожаленью не очень понял как сделать прохождение-Wno-write-strings к gcc подавит это предупреждение. Нужно прописать какую-ту команду, а потом снова набрать make?
Или нужно залезть в какой-то файл и поменять в нем что-то? Напишите пожалуйста поподробнее, я новичок в linux


Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

6. "шибки компиля"  +/
Сообщение от ImPressed (ok) on 01-Июн-11, 14:32 
>> Бедный, тяжело жить забаненным Гуглем? Вот злыдни-то!?
>> -Wno-write-strings и ещё к-у-у-уча вариантов изворотов:
>> http://stackoverflow.com/questions/59670/how-to-get-rid-of-d...
> Я к сожаленью не очень понял как сделать прохождение-Wno-write-strings к gcc подавит
> это предупреждение. Нужно прописать какую-ту команду, а потом снова набрать make?
> Или нужно залезть в какой-то файл и поменять в нем что-то? Напишите
> пожалуйста поподробнее, я новичок в linux

перед ./configure сделайте
export CXXFLAGS=" -Wno-write-strings "
потом сделайте ./configure и смотрите предыдущий мой пост, в файле db_error.cpp есть ошибки, на которых компилятор прекращает компиляцию, на эти Warningи можно не обращать внимания, они на совести тех, кто писал этот костыль

PS:
Не проще-ли вместо ICQ использовать Jabber? С ним проблем значительно меньше, возьмите eJabberd например он вообще компиляции не требует, т.к готовым пакетом вместе с erlang и библиотеками для erlang без которых он не запускаеся

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

5. "Ошибки компиляции iserverd"  +/
Сообщение от ImPressed (ok) on 01-Июн-11, 14:28 
>[оверквотинг удален]
> database/error_db.cpp:93: warning: deprecated conversion from string constant to ‘char*’
> database/error_db.cpp:93: warning: deprecated conversion from string constant to ‘char*’
> database/error_db.cpp:103: warning: deprecated conversion from string constant to ‘char*’
> database/error_db.cpp:113: warning: deprecated conversion from string constant to ‘char*’
> database/error_db.cpp:122: warning: deprecated conversion from string constant to ‘char*’
> database/error_db.cpp: In function ‘void wait_for_database()’:
> database/error_db.cpp:159: warning: deprecated conversion from string constant to ‘char*’
> database/error_db.cpp:167: warning: deprecated conversion from string constant to ‘char*’
> make: *** [database/error_db.o] Error 1
> Что теперь посоветуете

Iserverd вам настолько критичен?Если да, то придется лезть в исходники и править ошибки.
database/error_db.cpp в этом файле компилятор нашел ошибки
database/error_db.cpp:40: error: using typedef-name ‘ExecStatusType’ after ‘enum’
/usr/include/libpq-fe.h:84: error: ‘ExecStatusType’ has a previous declaration here
database/error_db.cpp:40: error: invalid type in declaration before ‘;’ token
Исправляйте их и будет вам Щасте. Код кривой как винт моторной лодки.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

7. "Ошибки компиляции iserverd"  +/
Сообщение от Shumaherf1 (ok) on 02-Июн-11, 12:04 
Спасибо за помощь!
Как я понял наошибки warning не стоит обращать внимания. А подскажите пожалуйста, хотя бы на 2 примерах что в самих файлах нужно поменять?

1)> database/error_db.cpp: In function ‘void wait_for_database()’:
Здесь нужно в скобках какое-то значение написать, какое? Или что-то удалить в этой строке?

2)database/error_db.cpp:40: error: using typedef-name ‘ExecStatusType’ after ‘enum’

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

8. "Ошибки компиляции iserverd"  +/
Сообщение от ImPressed (ok) on 02-Июн-11, 15:09 
> Спасибо за помощь!
> Как я понял наошибки warning не стоит обращать внимания. А подскажите пожалуйста,
> хотя бы на 2 примерах что в самих файлах нужно поменять?
> 1)> database/error_db.cpp: In function ‘void wait_for_database()’:
> Здесь нужно в скобках какое-то значение написать, какое? Или что-то удалить в
> этой строке?
> 2)database/error_db.cpp:40: error: using typedef-name ‘ExecStatusType’
> after ‘enum’

[telepat mode="on"]Ошибка с типами данных у вас. [telepat mode="off"] Что именно менять я не подскажу, т.к не вижу исходников. Это уж вы как-нибудь сами =) Подсказок уже достаточно вроде сделано

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру