Need someone to try compiling Jagged Alliance 2 (clone / Stracciatella)
#1
Need someone to try compiling Jagged Alliance 2 (clone / Stracciatella)
https://ja2-stracciatella.github.io/news/
0.16.0 = SDL has been replaced with SDL2

That leaves 0.15.1 the last version for IRIX with SDL1.2

I tried compiling with GCC and it got quite far.  

Many files reference missing wcslcpy() function..  so in those *.cc files I placed:

Code:
//IRIX
size_t wcslcpy(wchar_t* dst, const wchar_t* src, size_t len)
{
    wchar_t* d = dst;
    const wchar_t* s = src;
    size_t n = len;

    /* Copy as many bytes as will fit */
    if (n != 0 && --n != 0) {
        do {
            if ((*d++ = *s++) == 0) {
                break;
            }
        } while (--n != 0);
    }

    /* Not enough room in dst, add NUL and traverse rest of src */
    if (n == 0) {
        if (len != 0) {
            *d = '\0';        /* NUL-terminate dst */
        }
        while (*s++) { }
    }

    return(s - src - 1);    /* count does not include NUL */
}

Later
FileMan.cc gets errors with the internal boost libs..  I am assuming FileMan is for the optional GUI to choose data file locations but you can use command line arguments instead.. so nothing important with this file. 

So I hacked up FileMan.cc and set all functions using boost:: to return nothing (and not include boost.h too)

Later
/usr/nekoware/gcc-4.7/lib/gcc/mips-sgi-irix6.5/4.7.1/../../../../include/c++/4.7.1/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.

So I added -std=gnu++11 to CFLAGS in Makefile to get past that

Near the end of the compiling (the last directory to compile in src/.. not too many files left and it is noted most of the files are elsewhere that have already compiled)
One stubborn Soldier.cc to compile that uses the included Boost libraries
Lots of errors such as: redefinition of 'class boost::bad_weak_ptr', etc.. 
I noted the Boost header files already included header guards to protect against redefinition

#ifndef somethinghere
#define somethinghere
  the header file contents
#endif // somethinghere

yet that does not seem to fix it. 
I hacked up a few files to make it work and get past those but more of these types keep coming.. and later some really more complicated errors with the included boost (but they may be due to the previous redefinitions)

Anyone want to try to take a stab at compiling this?
necron2600
Octane

Trade Count: (0)
Posts: 127
Threads: 50
Joined: May 2018
Find Reply
04-24-2020, 12:09 AM


Forum Jump:


Users browsing this thread: 1 Guest(s)