Building from source
I've found I like emptyEpsilon. I've played with Artemis and found it fairly polished looking, but I have a distinct preference for the graphics in emptyEpsilon (Radar - cool) as well as the fact that source is available. I began to wonder if I could get it up on my unix machines (and I'd love to interface some hardware too ). Anyway, I downloaded source for the game, SeriousProton, and SFML to my unix machine, fired up CodeBlocks, and spent several hours trying to figure out why SeriousProton files couldn't be opened until I noticed that CodeBlocks expected the files to be in the directory "SeriousProton", not "SeriousProton-master". Then voila, everything compiled with no errors until it came to looking for SFML libraries. Couldn't find them. At least I assume it's looking for libraries to link to. it's looking for something like:
ld -lsmfl -window -d
etc.
I'm fairly new to CodeBlocks - can anyone point me in the right direction?
Thanks,
Gene
ld -lsmfl -window -d
etc.
I'm fairly new to CodeBlocks - can anyone point me in the right direction?
Thanks,
Gene
Comments
If i remember correctly, Ubuntu doesn't have the latest version of sfml precompiled, so you will need to do that yourself.
[20%] clang++ -stdlib=libstdc++ -lstdc++ -std=c++11 -Wall -I../SeriousProton/src -Isrc -O2 -o _build_Darwin_MacOS_Release/b2Rope.o -c ../SeriousProton/src/Box2D/Rope/b2Rope.cpp
[21%] gcc -std=c++11 -Wall -I../SeriousProton/src -Isrc -O2 -o _build_Darwin_MacOS_Release/glew.o -c ../SeriousProton/src/GL/glew.c
error: invalid argument '-std=c++11' not allowed with 'C/ObjC'
Update, you might try replacing -std=c++11 with -std=c++0x using Objective C.
Guess I'm getting my terminology mixed up.
[20%] gcc -std=c++11 -Wall -I../SeriousProton/src -Isrc -O2 -o _build_Darwin_MacOS_Release/glew.o -c ../SeriousProton/src/GL/glew.c
error: invalid argument '-std=c++11' not allowed with 'C/ObjC'
And GCC version, if it helps.
aeiche$ gcc --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)
Target: x86_64-apple-darwin14.4.0
Thread model: posix
[ 60%] Building CXX object CMakeFiles/EmptyEpsilon.dir/Users/aeiche/Development/EE/SeriousProton/src/Renderable.cpp.o
[ 61%] Building CXX object CMakeFiles/EmptyEpsilon.dir/Users/aeiche/Development/EE/SeriousProton/src/Updatable.cpp.o
[ 61%] Building CXX object CMakeFiles/EmptyEpsilon.dir/Users/aeiche/Development/EE/SeriousProton/src/textureManager.cpp.o
[ 62%] Building CXX object CMakeFiles/EmptyEpsilon.dir/Users/aeiche/Development/EE/SeriousProton/src/collisionable.cpp.o
[ 62%] Building CXX object CMakeFiles/EmptyEpsilon.dir/Users/aeiche/Development/EE/SeriousProton/src/stringImproved.cpp.o
[ 62%] Building CXX object CMakeFiles/EmptyEpsilon.dir/Users/aeiche/Development/EE/SeriousProton/src/resources.cpp.o
/Users/aeiche/Development/EE/SeriousProton/src/resources.cpp:48:9: error: no type named 'FileInputStream' in namespace 'sf'; did you mean
'InputStream'?
sf::FileInputStream stream;
~~~~^~~~~~~~~~~~~~~
InputStream
/usr/local/include/SFML/System/InputStream.hpp:40:7: note: 'InputStream' declared here
class InputStream
^
/Users/aeiche/Development/EE/SeriousProton/src/resources.cpp:48:25: error: field type 'sf::InputStream' is an abstract class
sf::FileInputStream stream;
^
/usr/local/include/SFML/System/InputStream.hpp:62:19: note: unimplemented pure virtual method 'read' in 'InputStream'
virtual Int64 read(void* data, Int64 size) = 0;
^
/usr/local/include/SFML/System/InputStream.hpp:72:19: note: unimplemented pure virtual method 'seek' in 'InputStream'
virtual Int64 seek(Int64 position) = 0;
^
/usr/local/include/SFML/System/InputStream.hpp:80:19: note: unimplemented pure virtual method 'tell' in 'InputStream'
virtual Int64 tell() = 0;
^
/usr/local/include/SFML/System/InputStream.hpp:88:19: note: unimplemented pure virtual method 'getSize' in 'InputStream'
virtual Int64 getSize() = 0;
^
2 errors generated.
make[2]: *** [CMakeFiles/EmptyEpsilon.dir/Users/aeiche/Development/EE/SeriousProton/src/resources.cpp.o] Error 1
make[1]: *** [CMakeFiles/EmptyEpsilon.dir/all] Error 2
make: *** [all] Error 2
[100%] Building C object CMakeFiles/EmptyEpsilon.dir/Users/aeiche/Development/EE/SeriousProton/src/lua/lbitlib.c.o
Linking CXX executable EmptyEpsilon
Undefined symbols for architecture x86_64:
"_CFBundleCopyResourcesDirectoryURL", referenced from:
_main in main.cpp.o
"_CFBundleGetMainBundle", referenced from:
_main in main.cpp.o
"_CFRelease", referenced from:
_main in main.cpp.o
"_CFURLGetFileSystemRepresentation", referenced from:
_main in main.cpp.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [EmptyEpsilon] Error 1
make[1]: *** [CMakeFiles/EmptyEpsilon.dir/all] Error 2
make: *** [all] Error 2