Jump to content
  • 0

Help with Extractors on Linux


Celtus

Question

Hello, and apologies if this has been covered. I did a search, and did not find a topic that seemed to address the problem, but I suppose I may have missed something.

I have been trying to compile the extractor tools on Linux (Ubuntu 10.04 LTS x64). The map extractor, and vmap extractor compile (with many warnings, but that is not an issue). The vmap assembler, however, does not. Perhaps I'm missing something?

This is where it fails. I have compiled and installed the libmpq dep. I have tried calling cmake with only a source path arg, as well as with ACE_ROOT and ACE_USE_EXTERNAL. I haven't torn through the source to review it very much (I'm quite lazy on Sunday mornings).

[ 86%] Building CXX object CMakeFiles/vmap.dir/opt/mangos/src/mangos/src/game/vmap/BIH.cpp.o
/usr/bin/c++   -DIOMAP_DEBUG -DNO_CORE_FUNCS -I/opt/mangos/src/mangos/contrib/vmap_assembler/../../src/shared -I/opt/mangos/src/mangos/contrib/vmap_assembler/../../src/game/vmap -I/opt/mangos/src/mangos/contrib/vmap_assembler/../../dep/include/g3dlite -I/opt/mangos/src/mangos/contrib/vmap_assembler/../../dep/ACE_wrappers -I/opt/mangos/src/mangos/contrib/vmap_assembler/../../objdir/dep/ACE_wrappers -I/opt/mangos/src/mangos/contrib/vmap_assembler/../../src/framework   -Wall -ggdb -O3 -o CMakeFiles/vmap.dir/opt/mangos/src/mangos/src/game/vmap/BIH.cpp.o -c /opt/mangos/src/mangos/src/game/vmap/BIH.cpp
In file included from /opt/mangos/src/mangos/contrib/vmap_assembler/../../dep/ACE_wrappers/ace/config-lite.h:24,
                from /opt/mangos/src/mangos/contrib/vmap_assembler/../../dep/ACE_wrappers/ace/Basic_Types.h:46,
                from /opt/mangos/src/mangos/contrib/vmap_assembler/../../src/framework/Platform/Define.h:24,
                from /opt/mangos/src/mangos/src/game/vmap/BIH.h:26,
                from /opt/mangos/src/mangos/src/game/vmap/BIH.cpp:19:
/opt/mangos/src/mangos/contrib/vmap_assembler/../../dep/ACE_wrappers/ace/config-macros.h:28:26: error: ace/config.h: No such file or directory
In file included from /opt/mangos/src/mangos/contrib/vmap_assembler/../../dep/ACE_wrappers/ace/os_include/os_unistd.h:27,
                from /opt/mangos/src/mangos/contrib/vmap_assembler/../../dep/ACE_wrappers/ace/os_include/os_limits.h:27,
                from /opt/mangos/src/mangos/contrib/vmap_assembler/../../dep/ACE_wrappers/ace/Basic_Types.h:58,
                from /opt/mangos/src/mangos/contrib/vmap_assembler/../../src/framework/Platform/Define.h:24,
                from /opt/mangos/src/mangos/src/game/vmap/BIH.h:26,
                from /opt/mangos/src/mangos/src/game/vmap/BIH.cpp:19:
/opt/mangos/src/mangos/contrib/vmap_assembler/../../dep/ACE_wrappers/ace/os_include/sys/os_types.h:126: error: conflicting declaration ‘typedef int ssize_t’
/usr/include/sys/types.h:110: error: ‘ssize_t’ has a previous declaration as ‘typedef __ssize_t ssize_t’
In file included from /opt/mangos/src/mangos/contrib/vmap_assembler/../../dep/ACE_wrappers/ace/os_include/os_signal.h:217,
                from /opt/mangos/src/mangos/contrib/vmap_assembler/../../dep/ACE_wrappers/ace/os_include/sys/os_wait.h:27,
                from /opt/mangos/src/mangos/contrib/vmap_assembler/../../dep/ACE_wrappers/ace/os_include/os_stdlib.h:28,
                from /opt/mangos/src/mangos/contrib/vmap_assembler/../../dep/ACE_wrappers/ace/Basic_Types.h:60,
                from /opt/mangos/src/mangos/contrib/vmap_assembler/../../src/framework/Platform/Define.h:24,
                from /opt/mangos/src/mangos/src/game/vmap/BIH.h:26,
                from /opt/mangos/src/mangos/src/game/vmap/BIH.cpp:19:
/opt/mangos/src/mangos/contrib/vmap_assembler/../../dep/ACE_wrappers/ace/os_include/os_ucontext.h:40: error: conflicting declaration ‘typedef int ucontext_t’
/usr/include/sys/ucontext.h:143: error: ‘ucontext_t’ has a previous declaration as ‘typedef struct ucontext ucontext_t’
make[2]: *** [CMakeFiles/vmap.dir/opt/mangos/src/mangos/src/game/vmap/BIH.cpp.o] Error 1
make[2]: Leaving directory `/opt/mangos/src/mangos/contrib/vmap_assembler'
make[1]: *** [CMakeFiles/vmap.dir/all] Error 2
make[1]: Leaving directory `/opt/mangos/src/mangos/contrib/vmap_assembler'
make: *** [all] Error 2

Btw, I have tried this also having built the server binaries using the included ace, thinking perhaps that would satisfy the dependency, but to the same end as using an external build of ace (which I prefer, not that it matters).

Has anyone run into this? If so, could you set me on the right path, please?

Many thanks!

[EDIT] I seem to run into the same issue with the mmap tool. Sorry, hadn't checked it yet when I posted the message.

Link to comment
Share on other sites

15 answers to this question

Recommended Posts

You will need ace version 6.0.x installed, which can and should be used as external installation to save compilation time.

Once you have checked out your mangos branch, start the build inside the source tree by running

mkdir build
cd build
cmake ../ -DPREFIX=/opt/mangos-zero -DDEBUG=0 -DPCH=1 -DUSE_STD_MALLOC=1 -DACE_USE_EXTERNAL=1

That should work fine.

Link to comment
Share on other sites

Actually, I find that the core segfaults on login if I use an external build of ACE. I have a feeling that one of the dependencies has been updated by Ubuntu. I'll try this on another distro. Thanks very much for your help!

Link to comment
Share on other sites

I built ACE 6.0.0 from source (local to a non-root user). I also tried building against a local version of openssl (1.0.1c). It really feels like Ubuntu broke something to me. They seem to have been playing around with libncurses and libreadline during the first half of June. I'm not a big fan of Ubuntu anyway, so I'll see how it does on Debian current. Thanks for all the help. If I can find anything that points to a specific component, I'll pass the details along.

Link to comment
Share on other sites

Arch is an excellent thought. I had planned to build a slack box to try it on, but I haven't played with arch in several months, so it will be nice to see what changed. I run slack in my production farms for work, but deb and ubuntu almost install themselves, so sometimes I get lazy with my hobby machines. ;)

Thanks again!

PS: Pandaboard looks like a cool gadget. I may need one.

Link to comment
Share on other sites

Arch needs a bit more manual configuration for the first time, but it usually boils down to configuring your network interface. After that it's a fresh breeze of "it just works". And yes, Pandaboard is pure <3 Just missing a nice case for it but meh, besides that it works fine.

Link to comment
Share on other sites

I've been reading about some heat issues the the RasPi. I doubt it will be up to any heavy lifting. I'll probably use it to replace my PogoPlug (running an older version of Arch, btw) as a media server (DLNA and UPnP).

Thanks again for all your help. I haven't had a chance to rebuild my server with arch, but I hope to check it out next week. I feel pretty confident that the OS change will solve any little build issues I've run into. I'll post an update when I've migrated the OS. That said, the server is rock-solid if I let it build against the included version of ACE. I just went ahead and ran the windows binary extractors from the repo under wine to get up and running.

Link to comment
Share on other sites

I thought about that as well, but I refused to. MaNGOS doesn't do stable releases and during its most active phase you could do updates almost every three to four hours, not to mention ScriptDev2. As well MaNGOS requires a database, so you will have to handle this (adding MySQL tables, characters, realmd, world and scriptdev2 [if not already runningyou even have to configure MySQL]; extracting maps, vmaps and mmaps, just to mention some of the problems) and there are at least two world databases. Therefore building the whole thing with a bash script and updating it once in a while, seemed superior to me.

Still I like how you support Arch and because I build some packages on my own (currently only one is in the AUR; others are for personal use) I am looking forward to your solutions.

Regards

Skirnir

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use