Cuberite Forum
Does not compile on OS X 10.9 and git submodule issues - Printable Version

+- Cuberite Forum (https://forum.cuberite.org)
+-- Forum: Cuberite (https://forum.cuberite.org/forum-4.html)
+--- Forum: Discussion (https://forum.cuberite.org/forum-5.html)
+--- Thread: Does not compile on OS X 10.9 and git submodule issues (/thread-1281.html)

Pages: 1 2


Does not compile on OS X 10.9 and git submodule issues - brushmate - 12-13-2013

Hey,

I just tried to compile MCServer on my Mac running Mavericks. I get following error:

Code:
/usr/bin/g++ -ggdb -g -D_DEBUG -O1 -DLUA_USE_DLOPEN -Wall -c -Isrc -Ilib -Ilib/jsoncpp/include src/Authenticator.cpp -o build/debug/src/Authenticator.o
In file included from src/Authenticator.cpp:2:
src/Globals.h:128:11: fatal error: 'tr1/memory' file not found
        #include <tr1/memory>
                 ^
1 error generated.
make: *** [build/debug/src/Authenticator.o] Error 1

So I tried to change this line to
Code:
#include <memory>
because I read that the location changed in Mavericks. But now I get 9 other errors and very long output: http://pastebin.com/1r07HaYV

Besides I can't pull the submodules of the repo. I get following error:

Code:
Cloning into 'MCServer/Plugins/TransAPI'...
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
Clone of 'git@github.com:bearbin/transapi.git' into submodule path 'MCServer/Plugins/TransAPI' failed

Cloning from hand works.

And one last question: How do you compile for Raspberry PI? Can you recommend a toolchain for cross compiling on a mac?


RE: Does not compile on OS X 10.9 and git submodule issues - SamJBarney - 12-13-2013

Yeah, I usually have to pull down the submodules by hand as well.

As for the errors, I don't know why you're getting them. I am currently running 10.7.5; I'll pull down the latest version and give it a test and let you know what the issue is.

I have a quick question for you: Are you using the provided gcc, or one you built yourself?

It compiled fine for me, though I am using GNU gcc which I built myself.

What I'm thinking happened is something that I ran into when I was trying to make a XCode project for MCServer. Its because CRYPTOPP_DISABLE_ASM is not being defined, which is causing CryptoPP to fail to compile. I'll put a pull request in real quick and get that fixed.


RE: Does not compile on OS X 10.9 and git submodule issues - brushmate - 12-13-2013

I am using the builtin gcc which is afaik the clang compiler.


RE: Does not compile on OS X 10.9 and git submodule issues - SamJBarney - 12-14-2013

Here, try something out for me:
Go into the makefile, to the section headed by 'Fix Crypto++ warnings in clang', and strip off the if statement surrounding CC_OPTIONS and CXX_OPTIONS. Then try rebuilding it.

If it succeeds, then the usual autodetection isn't working. If it doesn't succeed, then something else is wrong.


RE: Does not compile on OS X 10.9 and git submodule issues - bearbin - 12-14-2013

Yeah, it does look like the autodetection failed. What's the output of a:

Code:
clang --version

command? Also, we need to change that location for macs, will open an issue about it. In the future, you should also probably open an issue on github instead of here.

It appears the reason why the submodules aren't working is that your SSH key isn't on GitHub, or the SSH port is blocked. I think we might have to just move to HTTPS submodules or something like that.


RE: Does not compile on OS X 10.9 and git submodule issues - tigerw - 12-14-2013

For submodules, do you do git submodule foreach git pull origin master?

git submodule update doesn't actually update to the latest.


RE: Does not compile on OS X 10.9 and git submodule issues - brushmate - 12-14-2013

Code:
$ clang --version
Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
Target: x86_64-apple-darwin13.0.0
Thread model: posix

Code:
$ gcc -v
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
Target: x86_64-apple-darwin13.0.0
Thread model: posix

Regarding the ssh key you are right. I set up a new machine and forgot to upload the new key. Thanks!

I just saw that you opened the issue on github. I will provide more informations there.


RE: Does not compile on OS X 10.9 and git submodule issues - SamJBarney - 12-15-2013

Huh. Looks like we just need to look for 'clang' instead of 'clang version' for auto detection to work.


RE: Does not compile on OS X 10.9 and git submodule issues - SamJBarney - 12-17-2013

Ok, the fix is in the repo now. Let me know if you have any more issues!


RE: Does not compile on OS X 10.9 and git submodule issues - brushmate - 12-18-2013

There is still the "tr1/memory" include (https://github.com/mc-server/MCServer/issues/424). But if I change it, everything compiles without errors.