Can't find SDL_RWFromFP

I built the latest SDL 1.3 SVN snapshot for Windows, then dropped sdl.dll in the same folder as a Delphi program built against SDL 1.2 and tried to run it. I got this in an error box:---------------------------
testing.exe - Entry Point Not Found

The procedure entry point SDL_RWFromFP could not be located in the dynamic link library SDL.dll.

OK

I ran a text search on the .LIB file and couldn’t find any references to SDL_RWFromFP. Has this been removed from SDL? If so, what replaces it?

Upon further investigation, it looks like SDL_RWFromFP is present in the source code, but it isn’t actually compiling because a conditional called “HAVE_STDIO_H” isn’t set. Any idea how I can fix this? I’m compiling from Visual C++ 2005, Express Edition, in case that helps.>----- Original Message ----

From: Mason Wheeler <@Mason_Wheeler>
Subject: [SDL] Can’t find SDL_RWFromFP

I built the latest SDL 1.3 SVN snapshot for Windows, then dropped sdl.dll in the same folder as a Delphi program built against SDL 1.2 and tried to run it. I got this in an error box:


testing.exe - Entry Point Not Found

The procedure entry point SDL_RWFromFP could not be located in the dynamic link library SDL.dll.

OK

I ran a text search on the .LIB file and couldn’t find any references to SDL_RWFromFP. Has this been removed from SDL? If so, what replaces it?

Upon further investigation, it looks like SDL_RWFromFP is present in the source code, but it isn’t actually compiling because a conditional called “HAVE_STDIO_H” isn’t set. Any idea how I can fix this? I’m compiling from Visual C++ 2005, Express Edition, in case that helps.

“Not building with autoconf” strikes again! Try editing
include/SDL_config_win32.h and adding a #define for HAVE_STDIO_H in
there, along with the others…On Sat, Feb 21, 2009 at 2:20 PM, Mason Wheeler wrote:


http://pphaneuf.livejournal.com/

That didn’t work.

1>Linking…
1> Creating library .\Debug/SDL.lib and object .\Debug/SDL.exp
1>SDL_diskaudio.obj : error LNK2019: unresolved external symbol __imp__fprintf referenced in function _DISKAUD_OpenDevice
1>SDL_diskaudio.obj : error LNK2019: unresolved external symbol __imp____iob_func referenced in function _DISKAUD_OpenDevice
1>SDL_rwops.obj : error LNK2019: unresolved external symbol __imp__ftell referenced in function _stdio_seek
1>SDL_rwops.obj : error LNK2019: unresolved external symbol __imp__fseek referenced in function _stdio_seek
1>SDL_rwops.obj : error LNK2019: unresolved external symbol __imp__ferror referenced in function _stdio_read
1>SDL_rwops.obj : error LNK2019: unresolved external symbol __imp__fread referenced in function _stdio_read
1>SDL_rwops.obj : error LNK2019: unresolved external symbol __imp__fwrite referenced in function _stdio_write
1>SDL_rwops.obj : error LNK2019: unresolved external symbol __imp__fclose referenced in function _stdio_close
1>.\Debug/SDL.dll : fatal error LNK1120: 8 unresolved externals>----- Original Message ----

From: Pierre Phaneuf
Subject: Re: [SDL] Can’t find SDL_RWFromFP

On Sat, Feb 21, 2009 at 2:20 PM, Mason Wheeler <@Mason_Wheeler> wrote:

Upon further investigation, it looks like SDL_RWFromFP is present in the source code, but it isn’t actually compiling because a conditional called “HAVE_STDIO_H” isn’t set. Any idea how I can fix this? I’m
compiling from Visual C++ 2005, Express Edition, in case that helps.

“Not building with autoconf” strikes again! Try editing
include/SDL_config_win32.h and adding a #define for HAVE_STDIO_H in
there, along with the others…

After a bit more work, I’ve been able to build the DLL, but my program still won’t run because now it’s looking for MSVCR80.dll, and placing that in the folder with my EXE breaks things. It can’t load it properly, for whatever reason.

I’m getting sick of this Is there a download available of a precompiled Windows version of the SDL 1.3 DLL? I’ve looked on the website but I can’t find it. Is it just not there, or am I looking in the wrong place? If it’s not, could someone please post a Windows SDL 1.3 DLL that doesn’t have dependencies on broken Microsoft runtimes that won’t load?

Upon further investigation, it looks like SDL_RWFromFP is present in
the source code, but it isn’t actually compiling because a conditional
called “HAVE_STDIO_H” isn’t set. Any idea how I can fix this? I’m>----- Original Message ----

From: Pierre Phaneuf
Subject: Re: [SDL] Can’t find SDL_RWFromFP
On Sat, Feb 21, 2009 at 2:20 PM, Mason Wheeler <@Mason_Wheeler> wrote:

compiling from Visual C++ 2005, Express Edition, in case that helps.

“Not building with autoconf” strikes again! Try editing
include/SDL_config_win32.h and adding a #define for HAVE_STDIO_H in
there, along with the others…

Do you know that SDL 1.3 is not binary compatible with SDL 1.2?
So you just can’t change the DLL and be done with it.
The program using the DLL have to be compiled using the SDL 1.3 headers.On Saturday 21 February 2009 23:26:47 Mason Wheeler wrote:

After a bit more work, I’ve been able to build the DLL, but my program
still won’t run because now it’s looking for MSVCR80.dll, and placing
that in the folder with my EXE breaks things. It can’t load it properly,
for whatever reason.

I’m getting sick of this Is there a download available of a precompiled
Windows version of the SDL 1.3 DLL? I’ve looked on the website but I can’t
find it. Is it just not there, or am I looking in the wrong place? If
it’s not, could someone please post a Windows SDL 1.3 DLL that doesn’t have
dependencies on broken Microsoft runtimes that won’t load?

Do you know that SDL 1.3 is not binary compatible with SDL 1.2?
So you just can’t change the DLL and be done with it.
The program using the DLL have to be compiled using the SDL 1.3 headers.

According to a message Sam posted here a while ago, the only
compatibility-breaking changes are in a few specific routines, which the
program in question doesn’t use.>----- Original Message ----

From: Sami N??t?nen <sn.ml at keijukammari.fi>
Subject: Re: [SDL] Can’t find SDL_RWFromFP

Do you know that SDL 1.3 is not binary compatible with SDL 1.2?
So you just can’t change the DLL and be done with it.
The program using the DLL have to be compiled using the SDL 1.3 headers.

According to a message Sam posted here a while ago, the only
compatibility-breaking changes are in a few specific routines, which the
program in question doesn’t use.

Yes if you recompile with the SDL 1.3 headers, but SDL 1.3 is NOT binary
compatible with SDL 1.2 as there are changes in the used structures.

For example SDL_Rect members have changed from 16bit ints to 32bit ints.
So the size of SDL_Rect is 16 bytes for SDL 1.3 and 8 bytes for SDL 1.2.On Sunday 22 February 2009 14:00:11 Mason Wheeler wrote:

----- Original Message ----
From: Sami N??t?nen <sn.ml at keijukammari.fi>
Subject: Re: [SDL] Can’t find SDL_RWFromFP

Do you know that SDL 1.3 is not binary compatible with SDL 1.2?
So you just can’t change the DLL and be done with it.
The program using the DLL have to be compiled using the SDL 1.3 headers.

According to a message Sam posted here a while ago, the only
compatibility-breaking changes are in a few specific routines, which the
program in question doesn’t use.

Yes if you recompile with the SDL 1.3 headers, but SDL 1.3 is NOT binary
compatible with SDL 1.2 as there are changes in the used structures.

For example SDL_Rect members have changed from 16bit ints to 32bit ints.
So the size of SDL_Rect is 16 bytes for SDL 1.3 and 8 bytes for SDL 1.2.

Yes, that’s very good to know, but I really can’t do anything about that knowledge
for the moment. I’m using Delphi, not C, and I have to make my own headers.
But I can’t do that without a working DLL, which really ought to be on the site
but isn’t. Let’s solve one problem at a time please?>----- Original Message ----

From: Sami N??t?nen <sn.ml at keijukammari.fi>
Subject: Re: [SDL] Can’t find SDL_RWFromFP

Yes, that’s very good to know, but I really can’t do anything about that knowledge
for the moment. I’m using Delphi, not C, and I have to make my own headers.
But I can’t do that without a working DLL, which really ought to be on the site
but isn’t. Let’s solve one problem at a time please?

Yes, in general the pre-release stuff is only available in source form,
but here’s a DLL I just made based on the current subversion source:
http://www.libsdl.org/tmp/SDL-1.3-dll.zip

See ya!
-Sam Lantinga, Founder and President, Galaxy Gameworks LLC

Do you know that SDL 1.3 is not binary compatible with SDL 1.2?
So you just can’t change the DLL and be done with it.
The program using the DLL have to be compiled using the SDL 1.3
headers.

According to a message Sam posted here a while ago, the only
compatibility-breaking changes are in a few specific routines, which the
program in question doesn’t use.

Yes if you recompile with the SDL 1.3 headers, but SDL 1.3 is NOT binary
compatible with SDL 1.2 as there are changes in the used structures.

For example SDL_Rect members have changed from 16bit ints to 32bit ints.
So the size of SDL_Rect is 16 bytes for SDL 1.3 and 8 bytes for SDL 1.2.

Yes, that’s very good to know, but I really can’t do anything about that
knowledge for the moment. I’m using Delphi, not C, and I have to make my
own headers. But I can’t do that without a working DLL, which really ought
to be on the site but isn’t. Let’s solve one problem at a time please?

I simply stated this, because you will really need the headers used to compile
the program to match the library or the program will do funny and illegal
things.On Sunday 22 February 2009 15:49:34 Mason Wheeler wrote:

----- Original Message ----
From: Sami N??t?nen <sn.ml at keijukammari.fi>
Subject: Re: [SDL] Can’t find SDL_RWFromFP

Yes, in general the pre-release stuff is only available in source form,
but here’s a DLL I just made based on the current subversion source:
http://www.libsdl.org/tmp/SDL-1.3-dll.zip

Thanks! Time to go build some new headers.

BTW the changed rect will actually make things easier. The Delphi runtime defines a rectangle struct made of 32-bit integers. I used to have to convert between TRect and SDL_Rect, but now there’s no more need for that. I can just alias the one type to the other. :)>----- Original Message ----

From: Sam Lantinga
Subject: Re: [SDL] Can’t find SDL_RWFromFP

I simply stated this, because you will really need the headers used to compile
the program to match the library or the program will do funny and illegal
things.

True enough. But I already had the headers from the source package. What I was missing was a working binary. Thankfully, Sam’s gone and provided one.>----- Original Message ----

From: Sami N??t?nen <sn.ml at keijukammari.fi>
Subject: Re: [SDL] Can’t find SDL_RWFromFP