Your problems are GCC and FreeBSD specific. FreeBSD uses GCC 2.95, which is incompatible with a lot of code that the dev team is using. You need to upgrade to GCC 3.2+ to compile the source. If you were to migrate your 4.x system to GCC 3.2 you could compile, however you need to ensure that all your libraries are compiled with the same GCC, or you'll run into problems.
I gave up getting it to compile on FreeBSD 4.x. However, if you migrate to FreeBSD 5.2+ you'll have a native GCC 3.2+ compiler, which elimates most of the problems.
The semun problem can be fixed my commenting out the semun definition everywhere that it exists. Search the forums for FreeBSD and you will find some of my posts with patches to enable previous 5.x versions of EQEmu to compile and run on FreeBSD.
|