Raptor007 / aq2-tng

Action Quake 2: The Next Generation. Raptor007's sandbox for testing changes. When verified stable, this code is pushed to the official aq2-tng repo:
https://github.com/aq2-tng/aq2-tng/tree/bots
4 stars 2 forks source link

Windows 10 compile instructions #73

Closed andrijan closed 3 years ago

andrijan commented 6 years ago

Hey there!

Sorry for creating an issue here, but it was the only way I could reach you :)

About 5 years ago I was toying around modding AQ2, by adding Proximity mines, invisibility cloak and silly stuff like that. (https://github.com/andrijan/ajaq)

Now, I've been revisiting the idea of continuing the modding experience and I was delighted to find someone had picked up TNG!

Anyway, I've been searching the web trying to find a way to compile the source code for windows (gamex86.dll). The best I could find was https://www.quakewiki.net/archives/qdevels/lcccompile.html - But that's not working for me

(Just to provide a minor context, it probably doesn't mean anything, but this is the error I get when compiling)

make.exe: No targets provided near line 10

Do you have a way to create the gamex86.dll (It doesn't have to be compiled on Windows, if that's possible)

Raptor007 commented 6 years ago

No problem! On Windows you'll want to use MinGW: https://osdn.net/projects/mingw/releases/p15522

I also recommend including the path to command-line git in your MinGW environment: https://stackoverflow.com/a/6093805/2005867

Then it should be this easy: git clone https://github.com/aq2-tng/aq2-tng.git cd aq2-tng/source make

If it works, it'll make gamex86.dll in the aq2-tng/source directory.

Raptor007 commented 5 years ago

Feel free to re-open this ticket if you're still having troubles building it.

andrijan commented 3 years ago

Hey again! just got the itch again. Below is the output from make - I get a gamex86.dll file, but when loading it (via game action) it just loads the default baseq2 dll file it seems. All the assets are from action, but the weapons and such are from baseq2, which is the default behavior with a broken .dll file if I remember correctly. Any idea what's wrong?

andrijan@andrijan-win MINGW64 ~/aq2-tng/source (master)
$ make
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_cmds.o -c a_cmds.c
In file included from g_local.h:272,
                 from a_cmds.c:134:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_ctf.o -c a_ctf.c
In file included from g_local.h:272,
                 from a_ctf.c:50:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_doorkick.o -c a_doorkick.c
In file included from g_local.h:272,
                 from a_doorkick.c:20:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_game.o -c a_game.c
In file included from g_local.h:272,
                 from a_game.c:72:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
a_game.c: In function 'PrintMOTD':
a_game.c:338:6: warning: 'strncat' output may be truncated copying 39 bytes from a string of length 127 [-Wstringop-truncation]
      strncat(msg_buf + strlen(msg_buf), ctfgame.comment, 39);
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_items.o -c a_items.c
In file included from g_local.h:272,
                 from a_items.c:36:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_match.o -c a_match.c
In file included from g_local.h:272,
                 from a_match.c:56:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_menu.o -c a_menu.c
In file included from g_local.h:272,
                 from a_menu.c:15:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_radio.o -c a_radio.c
In file included from g_local.h:272,
                 from a_radio.c:30:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_team.o -c a_team.c
In file included from g_local.h:272,
                 from a_team.c:305:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_tourney.o -c a_tourney.c
In file included from g_local.h:272,
                 from a_tourney.c:16:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_vote.o -c a_vote.c
In file included from g_local.h:272,
                 from a_vote.c:63:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_xcmds.o -c a_xcmds.c
In file included from g_local.h:272,
                 from a_xcmds.c:72:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_xgame.o -c a_xgame.c
In file included from g_local.h:272,
                 from a_xgame.c:71:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_xmenu.o -c a_xmenu.c
In file included from g_local.h:272,
                 from a_xmenu.c:16:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_xvote.o -c a_xvote.c
In file included from g_local.h:272,
                 from a_xvote.c:24:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o cgf_sfx_glass.o -c cgf_sfx_glass.c
In file included from g_local.h:272,
                 from cgf_sfx_glass.c:43:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_chase.o -c g_chase.c
In file included from g_local.h:272,
                 from g_chase.c:31:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_cmds.o -c g_cmds.c
In file included from g_local.h:272,
                 from g_cmds.c:214:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_combat.o -c g_combat.c
In file included from g_local.h:272,
                 from g_combat.c:116:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_func.o -c g_func.c
In file included from g_local.h:272,
                 from g_func.c:29:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_items.o -c g_items.c
In file included from g_local.h:272,
                 from g_items.c:69:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_main.o -c g_main.c
In file included from g_local.h:272,
                 from g_main.c:272:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_misc.o -c g_misc.c
In file included from g_local.h:272,
                 from g_misc.c:31:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_phys.o -c g_phys.c
In file included from g_local.h:272,
                 from g_phys.c:16:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_save.o -c g_save.c
In file included from g_local.h:272,
                 from g_save.c:255:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_spawn.o -c g_spawn.c
In file included from g_local.h:272,
                 from g_spawn.c:155:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_svcmds.o -c g_svcmds.c
In file included from g_local.h:272,
                 from g_svcmds.c:61:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_target.o -c g_target.c
In file included from g_local.h:272,
                 from g_target.c:16:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_trigger.o -c g_trigger.c
In file included from g_local.h:272,
                 from g_trigger.c:16:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_utils.o -c g_utils.c
In file included from g_local.h:272,
                 from g_utils.c:16:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_weapon.o -c g_weapon.c
In file included from g_local.h:272,
                 from g_weapon.c:71:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o p_client.o -c p_client.c
In file included from g_local.h:272,
                 from p_client.c:319:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
p_client.c:2808:1: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
 {
 ^
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o p_hud.o -c p_hud.c
In file included from g_local.h:272,
                 from p_hud.c:52:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o p_view.o -c p_view.c
In file included from g_local.h:272,
                 from p_view.c:79:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o p_weapon.o -c p_weapon.c
In file included from g_local.h:272,
                 from p_weapon.c:97:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o q_shared.o -c q_shared.c
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o tng_stats.o -c tng_stats.c
In file included from g_local.h:272,
                 from tng_stats.c:70:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o tng_flashlight.o -c tng_flashlight.c
In file included from g_local.h:272,
                 from tng_flashlight.c:1:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o tng_irc.o -c tng_irc.c
In file included from g_local.h:272,
                 from tng_irc.c:39:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
tng_irc.c: In function 'irc_connect':
tng_irc.c:207:3: warning: 'strncpy' specified bound 2048 equals destination size [-Wstringop-truncation]
   strncpy (irc_data.ircserver, ircserver->string, IRC_BUFLEN);
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tng_irc.c:208:3: warning: 'strncpy' specified bound 2048 equals destination size [-Wstringop-truncation]
   strncpy (irc_data.ircuser, ircuser->string, IRC_BUFLEN);
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tng_irc.c:209:3: warning: 'strncpy' specified bound 2048 equals destination size [-Wstringop-truncation]
   strncpy (irc_data.ircpasswd, ircpasswd->string, IRC_BUFLEN);
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tng_irc.c:210:3: warning: 'strncpy' specified bound 2048 equals destination size [-Wstringop-truncation]
   strncpy (irc_data.ircchannel, ircchannel->string, IRC_BUFLEN);
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tng_irc.c: In function 'IRC_printf':
tng_irc.c:647:33: warning: '%s' directive writing up to 2047 bytes into a region of size 2040 [-Wformat-overflow=]
       sprintf (outbuf, "PRIVMSG %s :%s\n", irc_data.ircchannel, message);
                                 ^~         ~~~~~~~~~~~~~~~~~~~
tng_irc.c:647:7: note: 'sprintf' output between 12 and 3978 bytes into a destination of size 2048
       sprintf (outbuf, "PRIVMSG %s :%s\n", irc_data.ircchannel, message);
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o tng_ini.o -c tng_ini.c
In file included from g_local.h:272,
                 from tng_ini.c:1:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o tng_balancer.o -c tng_balancer.c
In file included from g_local.h:272,
                 from tng_balancer.c:1:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o g_grapple.o -c g_grapple.c
In file included from g_local.h:272,
                 from g_grapple.c:1:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o a_dom.o -c a_dom.c
In file included from g_local.h:272,
                 from a_dom.c:3:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32  -o tng_jump.o -c tng_jump.c
In file included from g_local.h:272,
                 from tng_jump.c:1:
game.h:131:9: warning: 'callee_pop_aggregate_return' attribute only available for 32-bit [-Wattributes]
         edict_t * passent, int contentmask);
         ^~~~~~~
gcc -Wall -fno-strict-aliasing -DC_ONLY -DVERSION="\"2.81 2020-05-20 16b2e20\"" -O2 -DWIN32 -shared -o gamex86.dll a_cmds.o a_ctf.o a_doorkick.o a_game.o a_items.o a_match.o a_menu.o a_radio.o a_team.o a_tourney.o a_vote.o a_xcmds.o a_xgame.o a_xmenu.o a_xvote.o cgf_sfx_glass.o g_chase.o g_cmds.o g_combat.o g_func.o g_items.o g_main.o g_misc.o g_phys.o g_save.o g_spawn.o g_svcmds.o g_target.o g_trigger.o g_utils.o g_weapon.o p_client.o p_hud.o p_view.o p_weapon.o q_shared.o tng_stats.o tng_flashlight.o tng_irc.o tng_ini.o tng_balancer.o g_grapple.o a_dom.o tng_jump.o -lws2_32
Raptor007 commented 3 years ago

The warning: 'callee_pop_aggregate_return' attribute only available for 32-bit is telling me that it's trying to build as a 64-bit DLL rather than the 32-bit Quake2 needs. It should be adding -m32 to the gcc command line, but for some reason it isn't.

Try this:

make X86=y ARCH=x86

If that works, I'll just need to improve the detection of MinGW64/MSYS2 in the Makefile.

Also, what does it say when you type uname -m in your MinGW environment?

andrijan commented 3 years ago

Thanks, I guess I just botched up my MinGW install :) It works now (By installing again the correct way)

Raptor007 commented 3 years ago

Glad you got it working!

I should probably still add detection of the MinGW64 environment and add -m32 in that case.