You are not logged in.
Hello everyone
I try to compile a game called pokemon-online
I got the source from the GIT repository:
http://sourceforge.net/projects/pogeymon-online/develop
Inside the source code, a file called HowToBuild says:
HOW TO BUILD THE PROJECT:
* Learn how to use Git
* Download all the files using Git
* Install the Qt Framework on your computer, or at least the libraries
* For linux users, install libzip-dev package (For Ubuntu --in a terminal--: sudo apt-get install libzip-dev)
* On linux just run the makefile, then add pogeymon-online/bin to your LD_LIBRARY_PATH.
For that add `export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/pogeymon-online/bin/` with the correct path to the bin directory to the end of your ~/.bashrc file.
* On windows Build src/Utilities/Utilities.pro and src/PokemonInfo/PokemonInfo.pro and thensrc/Teambuilder/Teambuilder.pro. To build those files, open them with Qt Creator and build the projects and run them. For the server it's src/Server/Server.pro
* On mac, you need to run qmake -spec macx-g++ if you want Makefile. Running qmake without -spec option creates .xcodeproject file, which you can build using xcodebuild command line tool or XCode IDE. After compiling client, run bin/bundle_mac_app.sh to copy resources inside application bundle
I have installed libzip package on my sistem.
So, when I run make, I get this error:
$ make
compiling utilities.
qmake -makefile -o src/PokemonInfo/Makefile src/PokemonInfo/PokemonInfo.pro
make -C src/PokemonInfo
make[1]: se ingresa al directorio `/home/zuargo/Paquetes/pokemon-online/src/PokemonInfo'
g++ -c -pipe -g -Wall -W -D_REENTRANT -fPIC -DQT_XML_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt/mkspecs/linux-g++ -I. -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include/QtXml -I/usr/include -I. -o pokemonstructs.o pokemonstructs.cpp
g++ -c -pipe -g -Wall -W -D_REENTRANT -fPIC -DQT_XML_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt/mkspecs/linux-g++ -I. -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include/QtXml -I/usr/include -I. -o pokemoninfo.o pokemoninfo.cpp
g++ -c -pipe -g -Wall -W -D_REENTRANT -fPIC -DQT_XML_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt/mkspecs/linux-g++ -I. -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include/QtXml -I/usr/include -I. -o networkstructs.o networkstructs.cpp
g++ -c -pipe -g -Wall -W -D_REENTRANT -fPIC -DQT_XML_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt/mkspecs/linux-g++ -I. -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include/QtXml -I/usr/include -I. -o movesetchecker.o movesetchecker.cpp
g++ -c -pipe -g -Wall -W -D_REENTRANT -fPIC -DQT_XML_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt/mkspecs/linux-g++ -I. -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include/QtXml -I/usr/include -I. -o battlestructs.o battlestructs.cpp
g++ -c -pipe -g -Wall -W -D_REENTRANT -fPIC -DQT_XML_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt/mkspecs/linux-g++ -I. -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include/QtXml -I/usr/include -I. -o teamsaver.o teamsaver.cpp
g++ -c -pipe -g -Wall -W -D_REENTRANT -fPIC -DQT_XML_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt/mkspecs/linux-g++ -I. -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include/QtXml -I/usr/include -I. -o moc_teamsaver.o moc_teamsaver.cpp
rm -f libpokemonlib.so.1.0.0 libpokemonlib.so libpokemonlib.so.1 libpokemonlib.so.1.0
g++ -Wl,--hash-style=gnu -Wl,--as-needed -shared -Wl,-soname,libpokemonlib.so.1 -o libpokemonlib.so.1.0.0 pokemonstructs.o pokemoninfo.o networkstructs.o movesetchecker.o battlestructs.o teamsaver.o moc_teamsaver.o -L/usr/lib -L../../bin -lutilities -lzip -lQtXml -lQtGui -lQtCore -lpthread
/usr/bin/ld: cannot find -lutilities
collect2: ld devolvió el estado de salida 1
make[1]: *** [../../bin/libpokemonlib.so.1.0.0] Error 1
make[1]: se sale del directorio `/home/zuargo/Paquetes/pokemon-online/src/PokemonInfo'
make: *** [src/PokemonInfo/PokemonInfo.pro] Error 2
I have searched by /usr/bin/ld: cannot find -lutilities on google but I can't find any information.
So, I ran pacman -Ql | grep /usr/bin/ld, and I got this:
$ pacman -Ql | grep /usr/bin/ld
binutils /usr/bin/ld
binutils /usr/bin/ld.bfd
binutils /usr/bin/ld.gold
glibc /usr/bin/ldd
glibc /usr/bin/lddlibc4
nasm /usr/bin/ldrdf
As you see binutils provides /usr/bin/ld, so I ran pacman -Ss binutils, and I got this:
$ pacman -Ss binutils
core/binutils 2.21-4 (base) [installed]
A set of programs to assemble and manipulate binary and object files
community/binutils-avr 2.21-1
A set of programs to assemble and manipulate binary and object files for the avr architecture
community/cross-arm-elf-binutils 2.21-2
A set of programs to assemble and manipulate binary and object files
community/cross-arm-wince-cegcc-binutils 0.59.1-1 (cegcc) [installed]
CE GCC bundle - cross compilation tools for WinCE
community/mingw32-binutils 2.21-1
A set of programs to assemble and manipulate binary and object files (mingw)
Then I installed every one fo those packages, but still I get the same error :'(
Searching on google by binutils, I found this:
The GNU Binutils are a collection of binary tools. The main ones are:
ld - the GNU linker.
as - the GNU assembler.But they also include:
addr2line - Converts addresses into filenames and line numbers.
ar - A utility for creating, modifying and extracting from archives.
c++filt - Filter to demangle encoded C++ symbols.
dlltool - Creates files for building and using DLLs.
gold - A new, faster, ELF only linker, still in beta test.
gprof - Displays profiling information.
nlmconv - Converts object code into an NLM.
nm - Lists symbols from object files.
objcopy - Copys and translates object files.
objdump - Displays information from object files.
ranlib - Generates an index to the contents of an archive.
readelf - Displays information from any ELF format object file.
size - Lists the section sizes of an object or archive file.
strings - Lists printable strings from files.
strip - Discards symbols.
windmc - A Windows compatible message compiler.
windres - A compiler for Windows resource files.
Source: http://www.gnu.org/software/binutils/binutils.html
Maybe, I need install some of those binary tools, which one are not at the official repos.
Can anybody give me any idea?, please.
Thanks in advance.
Last edited by zuargo (2011-04-06 14:43:45)
Offline
This:
On windows Build src/Utilities/Utilities.pro
makes me think that the makefile is supposed to build a "libutilities" but based on your make output it doesn't seem to be doing it.
Looks like an upstream bug in the makefile.
I've had a quick look at the makefile and... you could try removing the space at the beginning of line 24.
$(1)/%.pro: Makefile $$(wildcard $(1)/*.cpp) $$(wildcard $(1)/*.h) $$(wildcard $(1)/*.o)
PS: you can uninstall all the extra binutils packages you've installed .
Last edited by stqn (2011-04-05 11:35:41)
Offline
Thank you very much!!
Works!!!
Offline
Great
Please mark the thread as [SOLVED] then...
Offline