Страница 1 из 1

Проблеми в компиляции

Добавлено: 2010-12-11 14:03:26
mlevel
Понадобилось скомпилировать easysql(версия 1.0.5) под FreeBSD, но разработка етой проги не ведеться с 2000 года.

Код: Выделить всё

[system] /usr/home/user# uname -a
FreeBSD example.com 8.0-RELEASE-p4 FreeBSD 8.0-RELEASE-p4 #3: Sat Jul 17 19:03:45 EEST 2010     root@example.com:/usr/obj/usr/src/sys/EXAMPLE  i386

Код: Выделить всё

[system] /usr/home/user# mysql --version
mysql  Ver 14.14 Distrib 5.1.48, for portbld-freebsd8.0 (i386) using  5.2

Код: Выделить всё

[system] /usr/home/user# gcc --version
gcc (GCC) 4.2.1 20070719  [FreeBSD]
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
При попытке make all:

Код: Выделить всё

[system] /usr/home/user/easysql-1.0.5# make all
==
== Doing 'all' for 'include'
==
==
== Doing 'all' for 'src'
==
==
== Doing 'all' for 'drivers'
==
==
== Making 'all' for 'mysql' driver
==
c++ -O2 -Wall -Werror  -I../include -I/usr/local/include/mysql  -c mysql.C
In file included from mysql.C:11:
DrvHeader.h: In function 'void* mysql_easysql_driver(const char*)':
DrvHeader.h:98: error: invalid conversion from 'const char* (*)(mysql_easysql_data*)' to 'void*'
DrvHeader.h:100: error: invalid conversion from 'mysql_easysql_data* (*)()' to 'void*'
DrvHeader.h:102: error: invalid conversion from 'bool (*)(mysql_easysql_data*)' to 'void*'
DrvHeader.h:104: error: invalid conversion from 'mysql_easysql_data* (*)()' to 'void*'
DrvHeader.h:106: error: invalid conversion from 'bool (*)(mysql_easysql_data*)' to 'void*'
DrvHeader.h:108: error: invalid conversion from 'bool (*)(mysql_easysql_data*, const char* (*)(const void*, const char*), const void*)' to 'void*'
DrvHeader.h:110: error: invalid conversion from 'bool (*)(mysql_easysql_data*)' to 'void*'
DrvHeader.h:112: error: invalid conversion from 'bool (*)(mysql_easysql_data*, void*&, const char*)' to 'void*'
DrvHeader.h:114: error: invalid conversion from 'bool (*)(mysql_easysql_data*, const char* const*&, void*)' to 'void*'
DrvHeader.h:116: error: invalid conversion from 'bool (*)(mysql_easysql_data*, void*)' to 'void*'
DrvHeader.h:118: error: invalid conversion from 'const char* (*)(mysql_easysql_data*)' to 'void*'
DrvHeader.h:120: error: invalid conversion from 'void (*)(mysql_easysql_data*)' to 'void*'
DrvHeader.h:122: error: invalid conversion from 'bool (*)(mysql_easysql_data*)' to 'void*'
DrvHeader.h:124: error: invalid conversion from 'const char* (*)(mysql_easysql_data*)' to 'void*'
*** Error code 1

Stop in /usr/home/user/easysql-1.0.5/drivers/mysql.
*** Error code 1

Stop in /usr/home/user/easysql-1.0.5/drivers.
*** Error code 1

Stop in /usr/home/user/easysql-1.0.5.
В чем может быть проблема? Почему invalid conversion from?

Re: Проблеми в компиляции

Добавлено: 2010-12-11 20:52:31
Гость
-Werror
лишнее

Re: Проблеми в компиляции

Добавлено: 2010-12-11 21:57:02
Alex Keda
2 paradox
напинай днём меня в будний день
я уже на стол блин пакет положил, до почты никак не дойду.

Re: Проблеми в компиляции

Добавлено: 2010-12-12 1:30:55
mlevel
хм... далее такое:

Код: Выделить всё

gcc -O2 -pipe -I/home/user/amstat/include -I/home/user/amstat/lib -DMATHLIB -DNOKEY -I../include -c getuserlist.C
getuserlist.C: In function 'void addUsers(char*, char*)':
getuserlist.C:46: error: invalid conversion from 'int (*)(dirent*)' to 'int (*)(const dirent*)'
getuserlist.C:46: error:   initializing argument 3 of 'int scandir(const char*, dirent***, int (*)(const dirent*), int (*)(const dirent**, const dirent**))'
getuserlist.C:72: error: invalid conversion from 'int (*)(dirent*)' to 'int (*)(const dirent*)'
getuserlist.C:72: error:   initializing argument 3 of 'int scandir(const char*, dirent***, int (*)(const dirent*), int (*)(const dirent**, const dirent**))'
*** Error code 1

Re: Проблеми в компиляции

Добавлено: 2010-12-12 2:17:11
Гость
что значит далее?
начните с того что библиотека у вас скомпилировалась
и теперь вы ее пытаетесь подлючить и использовать

конст идентификатор или лишний или нехватает
смотрите у себя

Re: Проблеми в компиляции

Добавлено: 2010-12-12 2:39:48
mlevel
Да, скомпилировалась. Спасибо!
А последняя проблема была в том что не все заголовочние фали били найдены по include dir.

P.S. Такие ошибки часто проскакивают:

Код: Выделить всё

 warning: deprecated conversion from string constant to 'char*'