The SDL forums have moved to discourse.libsdl.org.
This is just a read-only archive of the previous forums, to keep old links working.


SDL Forum Index
SDL
Simple Directmedia Layer Forums
Mp3 files require libgcc_s_dw2-1.dll & libstdc++-6.dll??
djkarstenv


Joined: 29 Sep 2011
Posts: 34
Hi All,

I have updated my post as I am struggling to find a solution to this problem.

I have Windows 7 64-bit, im using VC++ express 2010 and SDL_Mixer 1.2.12, and in order to play mp3 files i had to download libgcc_s_dw2-1.dll & libstdc++-6.dll from somewhere on the internet. As much as i despise downloading files from just anywhere, i had to in order to hear my mp3's play. If these files are required, why are they not distributed with the binaries in SDL_Mixer? Is this supposed to happen?

Wav files however work fine. Has anyone else experienced this problem?

Is it perhaps a Win7 64bit issue and if so is there a fix coming?

Regards,

Karsten
sdl_mixer
necron


Joined: 10 Dec 2011
Posts: 33
I don't do mp3 with sdl_mixer. Is it supposed to do mp3's? I'm rather fond of xm and mod anyway and certianly wav and maybe mid. I don't think sdl_mixer is supposed to need anything except compiler support. Make sure to do any service packs so you are up to date. This libgcc_s_dw2-1.dll thing is not part of sdl_mixer at all I don't think. Ihni what dependancies that may have. Did it say libgcc_s_dw2-1.dll in the dependancies area of your compiler? Why did you decide you needed that stuff??
djkarstenv


Joined: 29 Sep 2011
Posts: 34
Hi Necron,

I know these 2 files don't belong to the SDL_Mixer library, and they certainly don't come with the SDL_Mixer library package, but my MP3 files don't load without them.

So, if I code :

Mix_Init(MIX_INIT_MP3);

then the MP3 encoder is loaded no problem. As soon as I load the MP3 file into memory using

Music = Mix_LoadMUS( "filename.mp3" );

i get the error "The program can't start because "libstdc++-6.dll" is missing from your computer. Try reinstalling the program to fix this problem."

Alternatively I can use

Mix_OpenAudio( 22050, MIX_DEFAULT_FORMAT, 2, 4096 );

as this opens up support for all audio file types I believe. This also works fine, but when loading the mp3 file, I get the same issue. It seems, SDL_Mixer needs these two DLL files in order to load the Mp3 into memory for whatever reason.

Most people I have spoken to can't really give me a good answer as most of them don't use MP3's.

Smile
confirmed issue
necron


Joined: 10 Dec 2011
Posts: 33
I just got around to doing an update to SDL_mixer-1.2.12 from SDL_mixer-1.2.11 and without even calling anything I get the same error that the app failed and the when I click "ok" it runs just fine! Yikes. I just updated the compiler a couple of months ago so it seems up to date. So either my package updates for my compiler are lacking standard stuff or mixer is calling weird stuff that not everyone should have. I'm not sure how to test to see or move forward. Anyone privy to this?
sdl may be afraid to include the required files yet depends
necron


Joined: 10 Dec 2011
Posts: 33
I researched the gcc file and found this:

http://en.wikipedia.org/wiki/GNU_General_Public_License#Libraries

According to the FSF, "The GPL does not require you to release your modified version, or any part of it. You are free to make modifications and use them privately, without ever releasing them."[41] However if one releases a GPL-licensed entity to the public, there is an issue regarding linking: namely, if a proprietary program uses a GPL library, is the proprietary program in violation of the GPL?

This key dispute is whether or not non-GPL software can legally statically link or dynamically link to GPL libraries. Different opinions exist on this issue. The GPL is clear in requiring that all derivative works of code under the GPL must themselves be under the GPL. Ambiguity arises with regards to using GPL libraries, and bundling GPL software into a larger package (perhaps mixed into a binary via static linking). This is ultimately a question not of the GPL per se, but of how copyright law defines derivative works.

So I'm thinking Sam wants you to download and use the file without actually provideing it to you. Am I wrong?
djkarstenv


Joined: 29 Sep 2011
Posts: 34
Hi,

I had a read thru, and I think i get what u mean and understand the issue a bit more. In order to play mp3's then, we will have to look for these 2 dll files online ourselves. Although i don't like downloading files from anywhere, we will have to be careful from where we aquire them from.

Another alternative I have found pleasing : download Audacity and after recording your wav sounds, save/convert them to OGG, they are nice and small and sound just as good!

K

Smile