[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Mingw-cross-env-list] SDL2 refuses to build

From: Old Man
Subject: Re: [Mingw-cross-env-list] SDL2 refuses to build
Date: Wed, 30 Apr 2014 08:49:08 -0600

Although sdl2 build successfully, the SDL2_net/ttf/mixer/image libraries complain about missing "winresrc.h" files. The problem is almost identical to a prior one I had building SDL_net/ttf/mixer/image several months ago (branch stable, 04fe9ffeef4c20fc2336bdce93de8cf75f8b0003).

I fixed the problem then by manually using windres to compile version.rc, but that doesn't work anymore (throws something about version.o being unportable, then fails with memory addressing). Normally, I would sit in my own corner and complain about my idiocy for not having taken the steps to fix it properly then, but SDL_mixer compiles successfully now, with no alterations required (on the current master branch). I am still using the exact same install of slackware as well.

Here are the steps to reproduce the successful build of SDL_mixer, and the failing build of SDL2_mixer:
git clone https://github.com/mxe/mxe.git && cd mxe
git checkout cdcd611b1daf538bce2ba02663a2c7c61f67b4b0
<Copy my settings.mk into the mxe directory>
make sdl_mixer sdl2_mixer

To sum it up: I'm having a problem with SDL2_mixer that I used to have with SDL_mixer. In the past several months, SDL_mixer has been made to work properly, but I can't identify what was changed in order to patch SDL2_Mixer appropiately.
Attached are the logfiles (good and bad) and my settings.mk

On Tue, Apr 29, 2014 at 7:07 PM, Timothy Gu <address@hidden> wrote:


You can do

make sdl2 sdl2_ttf sdl2_image sdl2_mixer sdl2_net TARGET=i686-w64-mingw32.static

to build 32-bit static SDL2. If you want a 64-bit build, substitute x86_64 in place of i686. See http://htmlpreview.github.io/?https://github.com/mxe/mxe/blob/master/index.html#tutorial

mingw-w64 is a fork of MinGW (i686-pc-mingw32, the default) that aims to support 64-bit *in addition* to 32-bit.


i686-pc-mingw32 is 32-bit MinGW.
i686-w64-mingw32 is 32-bit mingw-w64.
x86_64-w64-mingw32 is 64-bit mingw-w64.


Timothy Gu

Sent from my Nexus 7.

On Apr 29, 2014 4:36 PM, "Old Man" <address@hidden> wrote:
Whoops. This may sound a little foolish, but how do I change the target, and what are the differences between the two mingw64 targets?

On Tue, Apr 29, 2014 at 3:09 PM, M. Gerhardy <address@hidden> wrote:

Your selected targets dont support building sdl2.you need a mingw64 target for that.

Am 29.04.2014 22:00 schrieb "Old Man" <address@hidden>:

I'm trying to compile SDL2 from the latest master branch of MXE (cdcd611b1daf538bce2ba02663a2c7c61f67b4b0).
Everything seems to build successfully, but SDL2 and it's relatives (_mixer, _image, _ttf, _net), are not built at all.
The dependencies, however, are built successfully.

Here's the output from the commandline (after removing the dummy files in the installed folder):
address@hidden:/opt/mxe2# make sdl2 sdl2_ttf sdl2_image sdl2_mixer sdl2_net
[target]   i686-pc-mingw32.static with 5 goals from command line
[no-build] sdl2
[no-build] sdl2_ttf
[no-build] sdl2_image
[no-build] smpeg2
[no-build] sdl2_mixer
[no-build] sdl2_net

The logfiles are all similar to the following (for SDL2)
make[1]: Entering directory `/opt/mxe2'
touch '/opt/mxe2/usr/i686-pc-mingw32.static/installed/sdl2'
make[1]: Leaving directory `/opt/mxe2'

Any advice with the current situation is much appreciated.



Attachment: sdl2_mixer
Description: Binary data

Attachment: settings.mk
Description: Binary data

Attachment: sdl_mixer
Description: Binary data

reply via email to

[Prev in Thread] Current Thread [Next in Thread]