Nowe posty

Autor Wątek: Kompilacja problem  (Przeczytany 2615 razy)

sekula14

  • Gość
Kompilacja problem
« dnia: 2011-11-14, 13:55:49 »
Witam podczas kompilacji silnika pewnej gry na linuxie wywala mi błędy :
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -Wno-deprecated -Werror -O1 -c account.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -Wno-deprecated -Werror -O1 -c actions.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -Wno-deprecated -Werror -O1 -c admin.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -Wno-deprecated -Werror -O1 -c allocator.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -Wno-deprecated -Werror -O1 -c ban.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -Wno-deprecated -Werror -O1 -c baseevents.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -Wno-deprecated -Werror -O1 -c beds.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -Wno-deprecated -Werror -O1 -c creature.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -Wno-deprecated -Werror -O1 -c creatureevent.cpp
In file included from luascript.h:44,
                 from creatureevent.h:24,
                 from creatureevent.cpp:22:
position.h: In static member function 'static bool Position::areInRange(const Position&, const Position&)':
position.h:49: error: call of overloaded 'abs(int&)' is ambiguous
/usr/include/c++/4.4/cmath:94: note: candidates are: double std::abs(double)
/usr/include/c++/4.4/cmath:98: note:                 float std::abs(float)
/usr/include/c++/4.4/cmath:102: note:                 long double std::abs(long double)
position.h:49: error: call of overloaded 'abs(int&)' is ambiguous
/usr/include/c++/4.4/cmath:94: note: candidates are: double std::abs(double)
/usr/include/c++/4.4/cmath:98: note:                 float std::abs(float)
/usr/include/c++/4.4/cmath:102: note:                 long double std::abs(long double)
position.h:49: error: call of overloaded 'abs(int&)' is ambiguous
/usr/include/c++/4.4/cmath:94: note: candidates are: double std::abs(double)
/usr/include/c++/4.4/cmath:98: note:                 float std::abs(float)
/usr/include/c++/4.4/cmath:102: note:                 long double std::abs(long double)
position.h: In static member function 'static bool Position::areInRange(const Position&, const Position&)':
position.h:57: error: call of overloaded 'abs(int&)' is ambiguous
/usr/include/c++/4.4/cmath:94: note: candidates are: double std::abs(double)
/usr/include/c++/4.4/cmath:98: note:                 float std::abs(float)
/usr/include/c++/4.4/cmath:102: note:                 long double std::abs(long double)
position.h:57: error: call of overloaded 'abs(int&)' is ambiguous
/usr/include/c++/4.4/cmath:94: note: candidates are: double std::abs(double)
/usr/include/c++/4.4/cmath:98: note:                 float std::abs(float)
/usr/include/c++/4.4/cmath:102: note:                 long double std::abs(long double)
make: *** [creatureevent.o] Error 1
Robię to tak
1.cd katalog z source
2.make
3.no i teraz wywala bugi
Moje pytanie brzmi jak pozbyć się tych błędów?

chmooreck

  • Gość
Kompilacja problem
« Odpowiedź #1 dnia: 2011-11-14, 14:28:23 »
w position.h linie 49 i 57 wywołania abs(cos) zmienić na abs(double(cos))

sekula14

  • Gość
Kompilacja problem
« Odpowiedź #2 dnia: 2011-11-14, 16:07:43 »
Dzięki za pomoc.