[Mono-devel-list] mono SDL linux/win32 SDL.DLL - my brain hurts!
David Mitchell
david.mitchell at telogis.com
Wed Jul 20 23:39:48 EDT 2005
Oh, and you'll also want to make sure SDL (http://www.libsdl.org) is
installed on your machine.
David
David Mitchell wrote:
> Try this:
>
> http://prdownloads.sourceforge.net/cs-sdl/SdlDotNet-3.1.2-1.zip?download
>
> Looks like the latest linux version to me.
>
> David
>
> ted leslie wrote:
>
>> (After my preamble, I am essentially asking .. how does a wrapper to
>> .Net/Mono work .....)
>>
>> There must not be to many people writting cross platform apps
>> that need sound? Searching for sound (audio, mp3, sound) on
>> mono-project.com via mail list, etc
>> returns almost nothing.
>>
>> Anyways I came across SDL on the Resources page!!!! wow!!! this will
>> solve my problems!
>>
>> I go to cs-sdl.sourceforge.net
>> and check it out, It has SDL.NET for Win32 and Linux (mono is
>> supported, it says)
>> So i download the support libraries for SDL.NET which are the
>> traditional SDL libs .. put them on Win32 and updated
>> my ones on my Suse box.
>> I ran the Examples just fine on Win32
>>
>> Now on to Linux and Mono ...............
>>
>> First off the latest SDL.NET downloads on sourceforge seem to be for
>> Win32 only (as an aside they have a nice installer that does
>> everything for you on the Win32 side of things)
>>
>> So i dig back a COUPLE years and get a gz file (of SDL.NET) that has
>> linux support
>> (incidently i see screen caps in SDL.NET project page of SDL apps
>> running on linux so even thought
>> the linux support in the project seems old, it infact looks
>> like it run and works)
>>
>> I build the SDL.NET on Linux (using latest stable release Mono), but
>> there is an error in the Makefile,
>> the pathing slash is of the windows variety (hmmmmm...?), so i fix
>> that and Makefile the SDL.NET DLL's
>> and the examples.
>>
>> The Examples compile/build fine but the give a Mono runtime error that
>> they can't
>> find System DLL:SDL.dll
>>
>>
>>> --An exception was thrown by the type initializer for SdlDotNet.Music
>>> ---> System.DllNotFoundException: SDL.dll
>>
>>
>>
>> So this is were I hit a dead end because I don't know anything about
>> .Net/C# wrappers to traditional C based libraries on Linux.
>> I looked at the gtk-sharp wrapper (cause i know it works), I see a
>> mixer of C and CS files and traditional
>> gcc references in makefiles, but basically it looks like a big job to
>> figure out gtk-sharp's process of a wrapper.
>>
>> On that note, is there a doucmentation section somewhere on that -
>> i.e. building wrappers?
>>
>> To me, I am thinking in the end SDL.NET has to get hold of the
>> routines in the
>> SDL ".so" file right? how does that happen? I know how it happens in a
>> traditional C/gcc compile, link, create a .so file, and compile your
>> apps with dynamic support againt the ".so" .... what bit of magic get
>> Mono to see/do that (with its wrapper)?
>>
>> I check around the SDL.NET code and see in the Natives.cs file this:
>>
>> const string SDL_DLL = "SDL";
>> const string MIX_DLL = "SDL_mixer";
>> // General
>> [DllImport(SDL_DLL,
>> CallingConvention=CallingConvention.Cdecl),
>> SuppressUnmanagedCodeSecurity]
>> public static extern int SDL_Init(int flags);
>>
>> which I am thinking is pretty key to the process ...
>> but why reference SDL.DLL ... I don't have that on Linux, thats on
>> Win32.
>>
>> Anyone shed light?
>>
>> Also, would it be a hard job making the same wrapper to the SDL lib on
>> MAC-OSX to complete a good cross-platfrom
>> SDL.NET class for Mono ?
>> -tl
>>
>>
>>
>> _______________________________________________
>> Mono-devel-list mailing list
>> Mono-devel-list at lists.ximian.com
>> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>
>>
>
>
--
David Mitchell
Software Engineer
Telogis
More information about the Mono-devel-list
mailing list