<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Dsound undefined reference error when compiling using 5.2.1 binaries</title>
		<link>http://www.allegro.cc/forums/view/616425</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Mon, 15 Aug 2016 09:28:24 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hello! I&#39;ll keep it short, I love Allegro.</p><p>I&#39;ve been having problems with Allegro 5.2.1 anytime I try to use something from the Allegro Audio module, it throws the following errors when trying to compile.</p><p>Here&#39;s the code I&#39;m using.
</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number"> 1</span><span class="k3">|</span><span class="k3">|</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span> Build: Debug in test <span class="k2">(</span>compiler: GNU GCC Compiler<span class="k2">)</span> <span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">|</span>
<span class="number"> 2</span>..\allegro\lib\liballegro_audio-static.a<span class="k2">(</span>dsound.cpp.obj<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span>In function `dsound_open<span class="s">':|</span>
<span class="number"> 3</span><span class="s">C:\dev\allegro_winpkg\universal\allegro\addons\audio\dsound.cpp|252|undefined reference to `DirectSoundCreate8@12'</span><span class="k3">|</span>
<span class="number"> 4</span>..\allegro\lib\liballegro_audio-static.a<span class="k2">(</span>dsound.cpp.obj<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span>In function `dsound_open_recorder<span class="s">':|</span>
<span class="number"> 5</span><span class="s">C:\dev\allegro_winpkg\universal\allegro\addons\audio\dsound.cpp|731|undefined reference to `DirectSoundCaptureCreate8@12'</span><span class="k3">|</span>
<span class="number"> 6</span><span class="k3">|</span><span class="k3">|</span>error: ld returned <span class="n">1</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_298.html" target="_blank">exit</a> status<span class="k3">|</span>
<span class="number"> 7</span><span class="k3">|</span><span class="k3">|</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span> Build failed: <span class="n">3</span> error<span class="k2">(</span>s<span class="k2">)</span>, <span class="n">0</span> warning<span class="k2">(</span>s<span class="k2">)</span> <span class="k2">(</span><span class="n">0</span> minute<span class="k2">(</span>s<span class="k2">)</span>, <span class="n">3</span> second<span class="k2">(</span>s<span class="k2">)</span><span class="k2">)</span> <span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">|</span>
</div></div><p>

I was using Allegro 5.0.10 in a small game thing I&#39;m making which also uses Allegro Tiled, Taglib, and Lua Bridge. It all worked fine in my other PC with Windows XP. Then brought all the things to this other PC, which has Windows 10, and the thing I had just imploded when I tried to run it. So, well, I was going to recompile it to start hammering it here, and nothing worked because I had a different compiler (everything was set to use MinGW 4.7.0). Okay, that&#39;s something I expected, so, I took the opportunity to upgrade. </p><p>Changed Allegro to 5.2.1 and downloaded MinGW32-w64 with GCC 5.3.0 since I read somewhere it was the right one. I&#39;ve been having problems everywhere. But this one in particular I really have no idea.</p><p>Since it references DirectSound, I&#39;ve downloaded the small, trimmed version of DirectX9 dependencies from here: <a href="http://liballeg.org/download.html">http://liballeg.org/download.html</a> specifically the file named dx9mgw.zip, but it just ignores it, either having the corresponding dsound.lib or not the error message persists, maybe it uses a different version?</p><p>Added the dsound.lib to the linker, set -ldsound as a linker option, no change, it just doesn&#39;t seem to care it is there.</p><p>So I was wondering if someone here could help me. Here is my code, and withing it is a bad fix for a problem which is there temporally just for testing (I read somewhere it happens when the compiler used by libraries doesn&#39;t match, but thing is, it happens even when I&#39;m using only precompiled Allegro 5.2.1 and its dependencies).<br />Downloaded from here: <a href="http://liballeg.org/download.html#windows_binaries">http://liballeg.org/download.html#windows_binaries</a></p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number">  1</span><span class="k1">void</span> <span class="k3">*</span> __gxx_personality_v0<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>
<span class="number">  2</span><span class="k1">void</span> <span class="k3">*</span> _Unwind_Resume <span class="k3">=</span><span class="n">0</span><span class="k2">;</span>
<span class="number">  3</span>
<span class="number">  4</span><span class="p">#include &lt;dsound.h&gt;</span>
<span class="number">  5</span><span class="p">#define ALLEGRO_STATICLINK</span>
<span class="number">  6</span><span class="p">#include "allegro5/allegro.h"</span>
<span class="number">  7</span><span class="p">#include "allegro5/allegro_audio.h"</span>
<span class="number">  8</span><span class="p">#include "allegro5/allegro_acodec.h"</span>
<span class="number">  9</span>
<span class="number"> 10</span><span class="k1">int</span> main<span class="k2">(</span><span class="k1">int</span> argc, <span class="k1">char</span> <span class="k3">*</span><span class="k3">*</span>argv<span class="k2">)</span><span class="k2">{</span>
<span class="number"> 11</span>    <a href="http://www.allegro.cc/manual/al_init"><span class="a">al_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 12</span>    <span class="c">//If I leave this piece of code commented, it works </span>
<span class="number"> 13</span>    <span class="c">//does nothing as expected but compiles and runs.</span>
<span class="number"> 14</span>    <span class="c">/*al_install_audio();</span>
<span class="number"> 15</span><span class="c">    al_init_acodec_addon();</span>
<span class="number"> 16</span><span class="c">    al_reserve_samples(100);</span>
<span class="number"> 17</span><span class="c">    ALLEGRO_AUDIO_STREAM *stream = al_load_audio_stream("northfair.it", 10, 10);</span>
<span class="number"> 18</span><span class="c">    ALLEGRO_MIXER *mixer = al_get_default_mixer();</span>
<span class="number"> 19</span><span class="c">    al_attach_audio_stream_to_mixer(stream, mixer);*/</span>
<span class="number"> 20</span>    <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 21</span><span class="k2">}</span>
</div></div><p>

Thanks in advance.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Orochii Zouveleki)</author>
		<pubDate>Wed, 10 Aug 2016 07:26:02 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Conceptually, adding <span class="source-code"><span class="k3">-</span>ldsound</span> is the solution, so we just need to get that to work.</p><p>If you&#39;re using mingw32-w64, then you should be all set, as it has libdsound.a included (e.g. mine is located in F:/msys64/mingw32/i686-w64-mingw32/lib). Could you paste the gcc command you used to compile your program?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (SiegeLord)</author>
		<pubDate>Wed, 10 Aug 2016 10:37:44 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Actually forgot to say that I&#39;m using Code::Blocks. But here is what the build log says.
</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number"> 1</span>i686-w64-mingw32-g<span class="k3">+</span><span class="k3">+</span>.exe <span class="k3">-</span>Wall <span class="k3">-</span>g <span class="k3">-</span>I..\allegro\include <span class="k3">-</span>c E:\Proyectos\Cpp\Allegro521\test\main.cpp <span class="k3">-</span>o obj\Debug\main.o
<span class="number"> 2</span>i686-w64-mingw32-g<span class="k3">+</span><span class="k3">+</span>.exe  <span class="k3">-</span>o bin\Debug\test.exe obj\Debug\main.o  <span class="k3">-</span>static-libgcc <span class="k3">-</span>static-libstdc<span class="k3">+</span><span class="k3">+</span> <span class="k3">-</span>ldsound  C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libdsound.a ..\allegro\lib\liballegro-static.a ..\allegro\lib\liballegro_acodec-static.a ..\allegro\lib\libvorbisfile.a ..\allegro\lib\libvorbis.a ..\allegro\lib\liballegro_audio-static.a ..\allegro\lib\liballegro_color-static.a ..\allegro\lib\liballegro_dialog-static.a ..\allegro\lib\liballegro_font-static.a ..\allegro\lib\liballegro_image-static.a ..\allegro\lib\liballegro_memfile-static.a ..\allegro\lib\liballegro_physfs-static.a ..\allegro\lib\liballegro_primitives-static.a ..\allegro\lib\liballegro_ttf-static.a ..\allegro\lib\liballegro_video-static.a ..\allegro\lib\liballegro_main-static.a ..\allegro\lib\libdumb.a ..\allegro\lib\libFLAC.a ..\allegro\lib\libfreetype.a ..\allegro\lib\libjpeg.a ..\allegro\lib\libogg.a ..\allegro\lib\libphysfs.a ..\allegro\lib\libpng16.a ..\allegro\lib\libtheoradec.a ..\allegro\lib\libzlib.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libgdiplus.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libuuid.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libkernel32.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libwinmm.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libpsapi.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libopengl32.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libglu32.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libuser32.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libcomdlg32.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libgdi32.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libshell32.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libole32.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libadvapi32.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libws2_32.a C:\mingw-w64\mingw32\i686-w64-mingw32\lib\libshlwapi.a
</div></div><p>

Also I&#39;m using the 32bit version because I&#39;m one of those rare specimens that still have a 32bit OS.<br />I installed mingw32-w64 5.3.0 by using the automated installer, I&#39;m not pretty sure but at least when I downloaded and copied the DirectX files I got from that bundle never got any overwrite.</p><p>I put the -ldsound option at the linker options.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Orochii Zouveleki)</author>
		<pubDate>Wed, 10 Aug 2016 10:56:25 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><span class="source-code"><span class="k3">-</span>ldsound</span> needs to be present after the Allegro link lines. Since you&#39;re linking to Allegro by specifying the concrete .a files, I think the easiest solution for you would be to add <span class="source-code">libdsound.a</span> after the Allegro libraries in the associated Code::Blocks linker dialog. You don&#39;t need <span class="source-code"><span class="k3">-</span>ldsound</span> if you&#39;re adding <span class="source-code">libdsound.a</span> explicitly.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (SiegeLord)</author>
		<pubDate>Wed, 10 Aug 2016 10:59:58 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Yeah, it worked! I always get a little confused by the order in the linker, heh.</p><p>I managed to compile it, and I also did manage to compile my game too. Though there is an issue I&#39;m having with things tending to hang.</p><p>So I did some more tests in this small project.
</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number">  1</span><span class="k1">void</span> <span class="k3">*</span> __gxx_personality_v0<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>
<span class="number">  2</span><span class="k1">void</span> <span class="k3">*</span> _Unwind_Resume <span class="k3">=</span><span class="n">0</span><span class="k2">;</span>
<span class="number">  3</span>
<span class="number">  4</span><span class="p">#include &lt;dsound.h&gt;</span>
<span class="number">  5</span><span class="p">#include &lt;fstream&gt;</span>
<span class="number">  6</span><span class="p">#define ALLEGRO_STATICLINK</span>
<span class="number">  7</span><span class="p">#include "allegro5/allegro.h"</span>
<span class="number">  8</span><span class="p">#include "allegro5/allegro_audio.h"</span>
<span class="number">  9</span><span class="p">#include "allegro5/allegro_acodec.h"</span>
<span class="number"> 10</span><a href="http://www.allegro.cc/manual/ALLEGRO_KEYBOARD_STATE"><span class="a">ALLEGRO_KEYBOARD_STATE</span></a> <span class="k3">*</span>ret_state<span class="k2">;</span>
<span class="number"> 11</span><a href="http://www.allegro.cc/manual/ALLEGRO_TIMER"><span class="a">ALLEGRO_TIMER</span></a> <span class="k3">*</span>timer<span class="k2">;</span>
<span class="number"> 12</span><a href="http://www.allegro.cc/manual/ALLEGRO_EVENT_QUEUE"><span class="a">ALLEGRO_EVENT_QUEUE</span></a> <span class="k3">*</span>event_queue<span class="k2">;</span>
<span class="number"> 13</span>
<span class="number"> 14</span><span class="k1">int</span> main<span class="k2">(</span><span class="k1">int</span> argc, <span class="k1">char</span> <span class="k3">*</span><span class="k3">*</span>argv<span class="k2">)</span><span class="k2">{</span>
<span class="number"> 15</span>    <a href="http://www.allegro.cc/manual/al_init"><span class="a">al_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 16</span>    <a href="http://www.allegro.cc/manual/al_init_acodec_addon"><span class="a">al_init_acodec_addon</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 17</span>    <a href="http://www.allegro.cc/manual/al_install_audio"><span class="a">al_install_audio</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 18</span>    <span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><a href="http://www.allegro.cc/manual/al_install_keyboard"><span class="a">al_install_keyboard</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 19</span>        <span class="k1">return</span> <span class="n">1</span><span class="k2">;</span>
<span class="number"> 20</span>    <span class="k2">}</span>
<span class="number"> 21</span>    <a href="http://www.allegro.cc/manual/al_reserve_samples"><span class="a">al_reserve_samples</span></a><span class="k2">(</span><span class="n">100</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 22</span>    timer <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_create_timer"><span class="a">al_create_timer</span></a><span class="k2">(</span><span class="n">1</span>.<span class="n">0</span> <span class="k3">/</span> <span class="n">60</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 23</span>    event_queue <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_create_event_queue"><span class="a">al_create_event_queue</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 24</span>    <a href="http://www.allegro.cc/manual/al_register_event_source"><span class="a">al_register_event_source</span></a><span class="k2">(</span>event_queue, <a href="http://www.allegro.cc/manual/al_get_timer_event_source"><span class="a">al_get_timer_event_source</span></a><span class="k2">(</span>timer<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 25</span>    <a href="http://www.allegro.cc/manual/al_register_event_source"><span class="a">al_register_event_source</span></a><span class="k2">(</span>event_queue, <a href="http://www.allegro.cc/manual/al_get_keyboard_event_source"><span class="a">al_get_keyboard_event_source</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 26</span>    <a href="http://www.allegro.cc/manual/al_start_timer"><span class="a">al_start_timer</span></a><span class="k2">(</span>timer<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 27</span>    <span class="c">//</span>
<span class="number"> 28</span>    <a href="http://www.allegro.cc/manual/ALLEGRO_AUDIO_STREAM"><span class="a">ALLEGRO_AUDIO_STREAM</span></a> <span class="k3">*</span>stream <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_load_audio_stream"><span class="a">al_load_audio_stream</span></a><span class="k2">(</span><span class="s">"simple_combat_rearranged.ogg"</span>, <span class="n">4</span>, <span class="n">2048</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 29</span>    <a href="http://www.allegro.cc/manual/ALLEGRO_MIXER"><span class="a">ALLEGRO_MIXER</span></a> <span class="k3">*</span>mixer <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_get_default_mixer"><span class="a">al_get_default_mixer</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 30</span>    <a href="http://www.allegro.cc/manual/al_attach_audio_stream_to_mixer"><span class="a">al_attach_audio_stream_to_mixer</span></a><span class="k2">(</span>stream, mixer<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 31</span>    <span class="c">//</span>
<span class="number"> 32</span>    <span class="k1">bool</span> running <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>
<span class="number"> 33</span>    <span class="k1">int</span> fCount <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 34</span>    <span class="c">//</span>
<span class="number"> 35</span>    <span class="k1">while</span><span class="k2">(</span>running<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 36</span>         <a href="http://www.allegro.cc/manual/ALLEGRO_EVENT"><span class="a">ALLEGRO_EVENT</span></a> event<span class="k2">;</span>
<span class="number"> 37</span>        <a href="http://www.allegro.cc/manual/al_wait_for_event"><span class="a">al_wait_for_event</span></a><span class="k2">(</span>event_queue, <span class="k3">&amp;</span>event<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 38</span>        <span class="k1">switch</span> <span class="k2">(</span>event.type<span class="k2">)</span><span class="k2">{</span>
<span class="number"> 39</span>            <span class="k1">case</span> ALLEGRO_EVENT_TIMER:
<span class="number"> 40</span>                fCount<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>
<span class="number"> 41</span>                <span class="k1">if</span><span class="k2">(</span>fCount&gt;300<span class="k2">)</span> running <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number"> 42</span>                <span class="k1">break</span><span class="k2">;</span>
<span class="number"> 43</span>            <span class="k1">case</span> ALLEGRO_EVENT_KEY_DOWN:
<span class="number"> 44</span>                <a href="http://www.delorie.com/djgpp/doc/libc/libc_345.html" target="_blank">fprintf</a><span class="k2">(</span>stderr, <span class="s">"KEY DOWN\n"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 45</span>                running <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number"> 46</span>                <span class="k1">break</span><span class="k2">;</span>
<span class="number"> 47</span>        <span class="k2">}</span>
<span class="number"> 48</span>        <span class="c">//al_get_keyboard_state(ret_state);</span>
<span class="number"> 49</span>        <span class="c">//if( al_key_down(ret_state, ALLEGRO_KEY_SPACE) ) break;</span>
<span class="number"> 50</span>    <span class="k2">}</span>
<span class="number"> 51</span>    <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 52</span><span class="k2">}</span>
</div></div><p>
It compiles, but for some reason it hangs if I uncomment the al_get_keyboard_state and al_key_down lines. Also it doesn&#39;t seem to be registering the ALLEGRO_EVENT_KEY_DOWN. Just to be sure I made sure the keyboard was being installed, and yes, it is, it returns true.</p><p>It&#39;s pretty weird since I did pretty similar things in 5.0.10, the only other thing being different being Windows 10 instead of XP. My old 5.0.10 binary crashes the same way.</p><p>EDIT: Well, as kind-of expected, has nothing to do with Allegro. I tried my game, and voilà, keyboard works, no crash. Actually it did crash but crashed in a section where I parse some things in Lua. My compiler seems to be doing random things. I&#39;ll check it out by myself, and if anything I&#39;ll reinstall/build everything.</p><p>Thanks again SiegeLord for your help. And people, stay awesome.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Orochii Zouveleki)</author>
		<pubDate>Wed, 10 Aug 2016 11:54:48 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ah, glad you got it resolved. I was going to try to reproduce it yesterday but I was having trouble with my Windows 10...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (SiegeLord)</author>
		<pubDate>Fri, 12 Aug 2016 06:14:28 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>All Windows 10 has given me in my life is troubles. Heh!</p><p>I&#39;m still intrigued/annoyed by those random runtime crashes/hangs I&#39;ve been having (all I&#39;m doing is splitting some strings), but slowly I think I&#39;ll sort them out. After that I&#39;ll be finally able to continue with my game.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Orochii Zouveleki)</author>
		<pubDate>Fri, 12 Aug 2016 10:00:18 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Orochii said:</div><div class="quote"><p>
void * __gxx_personality_v0=0;<br />void * _Unwind_Resume =0;
</p></div></div><p>
Defining compiler symbols like that is sure to cause trouble. If you are getting undefined references to them, it means you&#39;re mixing a version of allegro compiled with one version of the compiler with a runtime compiled with a different compiler. Don&#39;t mix versions.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Fri, 12 Aug 2016 18:27:34 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I read something about that from the place I saw that defining those symbols would temporally fix the problem. So... yeah maybe I should prioritize fixing that.</p><p>I am a little unsure of what to do because I get it in my test too, where all I have is the Allegro lib files (all of them static, non debug), the dependencies and the MingW libraries, along with the libdsound.a (which by the way had to download since the compiler I&#39;m using didn&#39;t had it).</p><p>All the Allegro libraries are from the same bundle found in <a href="http://download.gna.org/allegro/allegro-bin/">http://download.gna.org/allegro/allegro-bin/</a><br />And the dependencies from <a href="http://download.gna.org/allegro/allegro-deps/">http://download.gna.org/allegro/allegro-deps/</a></p><p>I went and checked out the simple test I made by using just Allegro, and these are the build messages.
</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number"> 1</span><span class="k3">|</span><span class="k3">|</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span> Build: Debug in test <span class="k2">(</span>compiler: GNU GCC Compiler<span class="k2">)</span> <span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">|</span>
<span class="number"> 2</span>..\allegro\lib\liballegro-static.a<span class="k2">(</span>d3d_display_formats.cpp.obj<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span>In function `al_d3d_generate_display_format_list<span class="s">':|</span>
<span class="number"> 3</span><span class="s">C:\dev\allegro_winpkg\universal\allegro\src\win\d3d_display_formats.cpp|49|undefined reference to `_Unwind_Resume'</span><span class="k3">|</span>
<span class="number"> 4</span>C:\dev\allegro_winpkg\universal\allegro\src\win\d3d_display_formats.cpp<span class="k3">|</span><span class="n">50</span><span class="k3">|</span>undefined reference to `_Unwind_Resume<span class="s">'|</span>
<span class="number"> 5</span><span class="s">..\allegro\lib\liballegro-static.a(d3d_display_formats.cpp.obj):d3d_display_formats.cpp:(.eh_frame+0x63)||undefined reference to `__gxx_personality_v0'</span><span class="k3">|</span>
<span class="number"> 6</span><span class="k3">|</span><span class="k3">|</span>error: ld returned <span class="n">1</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_298.html" target="_blank">exit</a> status<span class="k3">|</span>
<span class="number"> 7</span><span class="k3">|</span><span class="k3">|</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span> Build failed: <span class="n">4</span> error<span class="k2">(</span>s<span class="k2">)</span>, <span class="n">0</span> warning<span class="k2">(</span>s<span class="k2">)</span> <span class="k2">(</span><span class="n">0</span> minute<span class="k2">(</span>s<span class="k2">)</span>, <span class="n">3</span> second<span class="k2">(</span>s<span class="k2">)</span><span class="k2">)</span> <span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">|</span>
</div></div><p>

I&#39;m probably using the wrong compiler for Allegro. MingW32-w64 (the 32bit version).<br />Then there is taglib, but that I know I compiled it before with MingW 4.7.0 so that&#39;s not an issue, I&#39;ll do it after hammering this.</p><p>By now I&#39;ll be getting the MingW 5.3.0 instead of the w64 one. Just trying things out. I&#39;ll later update with the results of this.</p><p>EDIT: Well, finally! Things work well. Installed the MinGW 5.3.0 (not the -w64 one) because I liked it. So objective. Then built Allegro from Sources using MSYS/MinGW. And finally rebuilt TagLib, and voilà. That got rid of the _gxx_personality/_Unwind_Resume things and thereby (or so it seems) those pesky &quot;random&quot; hangs.<br />One final thing though is that for some reason the game hangs just before exiting, and the thing that makes it hang (already checked it) are these lines.<br />al_destroy_mixer()<br />al_destroy_voice()<br />I&#39;ve got al_uninstall_audio so it probably tries to do it again, so commented it there, I just hope there isn&#39;t any leak (I rarely use <b>new</b> constructors but you never know!).</p><p>Anyway, huge thanks SiegeLord and Edgar Reynaldo, and the community and the rest of contributors developing this awesome library.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Orochii Zouveleki)</author>
		<pubDate>Sat, 13 Aug 2016 19:53:26 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>That hang sounds similar to the one in <a href="https://www.allegro.cc/forums/thread/616368">https://www.allegro.cc/forums/thread/616368</a>. I made an issue about it on github so we don&#39;t forget: <a href="https://github.com/liballeg/allegro5/issues/664">https://github.com/liballeg/allegro5/issues/664</a>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (SiegeLord)</author>
		<pubDate>Mon, 15 Aug 2016 07:31:50 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Well, I do use al_reserve_samples() but it&#39;s working fine as far as I&#39;ve seen. Though I haven&#39;t tried releasing the samples from memory before destroying the mixer/voice (bad, me! bad!).</p><p>I&#39;ll test out some more ideas around the issue when I get my hands in my &quot;workplace&quot;.</p><p>I&#39;ll take the opportunity and share a video.<br /><a href="https://www.youtube.com/watch?v=CCliEcAW4Kw">https://www.youtube.com/watch?v=CCliEcAW4Kw</a></p><p>(I&#39;m doing an RPG engine as a preparation for a future project, and because fun, right now I&#39;m working on the event interpreter <s>terminology from RPG Maker because why not</s>).<br />EDIT: By the way, just tested it on WinXP and it works perfectly fine too. I&#39;m happy! <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Orochii Zouveleki)</author>
		<pubDate>Mon, 15 Aug 2016 09:28:24 +0000</pubDate>
	</item>
</rss>
