<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Install Allegro 5.2.4.1 on Win10</title>
		<link>http://www.allegro.cc/forums/view/617338</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Fri, 30 Mar 2018 09:56:03 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I&#39;m new to both Allegro 5 and C programming (can write simple programs, but doesn&#39;t have much experience in things such as build, make, compile, etc.). Currently I didn&#39;t meet too much difficulties on both installation and programming on macOS. However, when turning to windows platform (Win10), I still cannot run a simple program after one day on search and tries.</p><p>I&#39;ve downloaded the binary-build version (allegro-x86_64-w64-mingw32-gcc-7.2.0-posix-seh, both dynamic and static version), and set their /bin path to system PATH variable. </p><p>First I tried to run program on CLion, with toolchain:<br />mingw64 7.2.0 (x86_64, posix, seh)<br />CMake   3.9.6 (Bundled in CLion)<br />GNU gdb 8.0.1<br />(make and gcc are bundled in mingw64, but I can&#39;t see the version from CLion.)<br />/bin path of mingw64 is also added to system PATH variable.</p><p>This is the CMakeLists.txt for the 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>cmake_minimum_required<span class="k2">(</span>VERSION <span class="n">3</span>.<span class="n">9</span><span class="k2">)</span>
<span class="number">  2</span>project<span class="k2">(</span>allegro5_test_c90 C<span class="k2">)</span>
<span class="number">  3</span>
<span class="number">  4</span>set<span class="k2">(</span>CMAKE_C_STANDARD <span class="n">90</span><span class="k2">)</span>
<span class="number">  5</span>
<span class="number">  6</span>add_executable<span class="k2">(</span>allegro5_test_c90 main.c<span class="k2">)</span>
<span class="number">  7</span>
<span class="number">  8</span>INCLUDE_DIRECTORIES<span class="k2">(</span>  C:<span class="k3">/</span>Allegro5<span class="k3">/</span>allegro-x86_64-w64-mingw32-gcc-7.2.0-posix-seh-static-5.2.4.1<span class="k3">/</span>allegro<span class="k3">/</span>include <span class="k2">)</span>
<span class="number">  9</span>LINK_DIRECTORIES<span class="k2">(</span>  C:<span class="k3">/</span>Allegro5<span class="k3">/</span>allegro-x86_64-w64-mingw32-gcc-7.2.0-posix-seh-static-5.2.4.1<span class="k3">/</span>allegro<span class="k3">/</span>lib <span class="k2">)</span>
<span class="number"> 10</span>
<span class="number"> 11</span>file<span class="k2">(</span>GLOB LIBRARIES <span class="s">"C:/Allegro5/allegro-x86_64-w64-mingw32-gcc-7.2.0-posix-seh-static-5.2.4.1/allegro/lib/*.dll.a"</span><span class="k2">)</span>
<span class="number"> 12</span>message<span class="k2">(</span><span class="s">"LIBRARIES = ${LIBRARIES}"</span><span class="k2">)</span>
<span class="number"> 13</span>
<span class="number"> 14</span>TARGET_LINK_LIBRARIES<span class="k2">(</span>allegro5_test_c90  $<span class="k2">{</span>LIBRARIES<span class="k2">}</span><span class="k2">)</span>
</div></div><p>

This is the code I tried to run from YouTube tutorial.
</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="p">#include &lt;stdio.h&gt;</span>
<span class="number">  2</span>
<span class="number">  3</span><span class="p">#include &lt;allegro5/allegro.h&gt;</span>
<span class="number">  4</span><span class="p">#include &lt;allegro5/allegro_native_dialog.h&gt;</span>
<span class="number">  5</span><span class="p">#include &lt;allegro5/allegro_font.h&gt;</span>
<span class="number">  6</span><span class="p">#include &lt;allegro5/allegro_ttf.h&gt;</span>
<span class="number">  7</span><span class="p">#include &lt;allegro5/allegro_primitives.h&gt;</span>
<span class="number">  8</span>
<span class="number">  9</span><span class="p">#define ScreenWidth 800</span>
<span class="number"> 10</span><span class="p">#define ScreenHeight 600</span>
<span class="number"> 11</span>
<span class="number"> 12</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"> 13</span>
<span class="number"> 14</span>    <span class="k1">if</span><span class="k2">(</span><span class="k3">!</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="k2">{</span>
<span class="number"> 15</span>        <a href="http://www.allegro.cc/manual/al_show_native_message_box"><span class="a">al_show_native_message_box</span></a><span class="k2">(</span>NULL, NULL, NULL, <span class="s">"Init failed!"</span>, NULL, ALLEGRO_MESSAGEBOX_WARN<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 16</span>        <span class="k1">return</span> <span class="k3">-</span><span class="n">1</span><span class="k2">;</span>
<span class="number"> 17</span>    <span class="k2">}</span>
<span class="number"> 18</span>
<span class="number"> 19</span>    <a href="http://www.allegro.cc/manual/ALLEGRO_DISPLAY"><span class="a">ALLEGRO_DISPLAY</span></a> <span class="k3">*</span>display <span class="k3">=</span> NULL<span class="k2">;</span>
<span class="number"> 20</span>    <a href="http://www.allegro.cc/manual/al_set_new_display_flags"><span class="a">al_set_new_display_flags</span></a><span class="k2">(</span>ALLEGRO_WINDOWED<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 21</span>    display <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_create_display"><span class="a">al_create_display</span></a><span class="k2">(</span>ScreenWidth, ScreenHeight<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 22</span>
<span class="number"> 23</span>    <a href="http://www.allegro.cc/manual/al_set_window_position"><span class="a">al_set_window_position</span></a><span class="k2">(</span>display, <span class="n">200</span>, <span class="n">100</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 24</span>    <a href="http://www.allegro.cc/manual/al_set_window_title"><span class="a">al_set_window_title</span></a><span class="k2">(</span>display, <span class="s">"Test Title"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 25</span>    <span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>display<span class="k2">)</span><span class="k2">{</span>
<span class="number"> 26</span>        <a href="http://www.allegro.cc/manual/al_show_native_message_box"><span class="a">al_show_native_message_box</span></a><span class="k2">(</span>display, <span class="s">"Sample Title"</span>, <span class="s">"Display Settings"</span>, <span class="s">"Failed on Display!"</span>, NULL, ALLEGRO_MESSAGEBOX_WARN<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 27</span>        <span class="k1">return</span> <span class="k3">-</span><span class="n">1</span><span class="k2">;</span>
<span class="number"> 28</span>    <span class="k2">}</span>
<span class="number"> 29</span>
<span class="number"> 30</span>    <a href="http://www.allegro.cc/manual/al_init_font_addon"><span class="a">al_init_font_addon</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 31</span>    <a href="http://www.allegro.cc/manual/al_init_ttf_addon"><span class="a">al_init_ttf_addon</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 32</span>
<span class="number"> 33</span>    <a href="http://www.allegro.cc/manual/ALLEGRO_FONT"><span class="a">ALLEGRO_FONT</span></a> <span class="k3">*</span><a href="http://www.allegro.cc/manual/font"><span class="a">font</span></a> <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_load_font"><span class="a">al_load_font</span></a><span class="k2">(</span><span class="s">"./../Font/Arial.ttf"</span>, <span class="n">36</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 34</span>    <a href="http://www.allegro.cc/manual/al_draw_text"><span class="a">al_draw_text</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/font"><span class="a">font</span></a>, <a href="http://www.allegro.cc/manual/al_map_rgb"><span class="a">al_map_rgb</span></a><span class="k2">(</span><span class="n">44</span>, <span class="n">117</span>, <span class="n">255</span><span class="k2">)</span>, ScreenWidth <span class="k3">/</span> <span class="n">2</span>, ScreenHeight <span class="k3">/</span> <span class="n">2</span>, ALLEGRO_ALIGN_CENTRE, <span class="s">"Hello!"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 35</span>
<span class="number"> 36</span>    <a href="http://www.allegro.cc/manual/al_flip_display"><span class="a">al_flip_display</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 37</span>
<span class="number"> 38</span>    <a href="http://www.allegro.cc/manual/al_init_primitives_addon"><span class="a">al_init_primitives_addon</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 39</span>    <a href="http://www.allegro.cc/manual/ALLEGRO_COLOR"><span class="a">ALLEGRO_COLOR</span></a> electricBlue <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_map_rgb"><span class="a">al_map_rgb</span></a><span class="k2">(</span><span class="n">44</span>, <span class="n">117</span>, <span class="n">255</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 40</span>    <a href="http://www.allegro.cc/manual/ALLEGRO_COLOR"><span class="a">ALLEGRO_COLOR</span></a> red <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_map_rgb"><span class="a">al_map_rgb</span></a><span class="k2">(</span><span class="n">255</span>, <span class="n">0</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 41</span>    <a href="http://www.allegro.cc/manual/ALLEGRO_COLOR"><span class="a">ALLEGRO_COLOR</span></a> green <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_map_rgb"><span class="a">al_map_rgb</span></a><span class="k2">(</span><span class="n">0</span>, <span class="n">255</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 42</span>    <span class="k1">float</span> points<span class="k2">[</span><span class="n">8</span><span class="k2">]</span> <span class="k3">=</span> <span class="k2">{</span><span class="n">0</span>, <span class="n">0</span>, <span class="n">400</span>, <span class="n">100</span>, <span class="n">50</span>, <span class="n">200</span>, ScreenWidth, ScreenHeight<span class="k2">}</span><span class="k2">;</span>
<span class="number"> 43</span>
<span class="number"> 44</span>    <a href="http://www.allegro.cc/manual/al_draw_filled_triangle"><span class="a">al_draw_filled_triangle</span></a><span class="k2">(</span><span class="n">10</span>, <span class="n">10</span>, <span class="n">20</span>, <span class="n">10</span>, <span class="n">15</span>, <span class="n">50</span>, red<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 45</span>    <a href="http://www.allegro.cc/manual/al_draw_rounded_rectangle"><span class="a">al_draw_rounded_rectangle</span></a><span class="k2">(</span><span class="n">10</span>, <span class="n">10</span>, <span class="n">100</span>, <span class="n">100</span>, <span class="n">5</span>, <span class="n">5</span>, green, <span class="n">3</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 46</span>    <a href="http://www.allegro.cc/manual/al_draw_rectangle"><span class="a">al_draw_rectangle</span></a><span class="k2">(</span><span class="n">400</span>, <span class="n">400</span>, <span class="n">450</span>, <span class="n">500</span>, <a href="http://www.allegro.cc/manual/al_map_rgb"><span class="a">al_map_rgb</span></a><span class="k2">(</span><span class="n">255</span>, <span class="n">98</span>, <span class="n">100</span><span class="k2">)</span>, <span class="n">9</span>.<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 47</span>    <a href="http://www.allegro.cc/manual/al_draw_circle"><span class="a">al_draw_circle</span></a><span class="k2">(</span>ScreenWidth<span class="k3">/</span><span class="n">2</span>, ScreenHeight<span class="k3">/</span><span class="n">2</span>, <span class="n">10</span>, <a href="http://www.allegro.cc/manual/al_map_rgb"><span class="a">al_map_rgb</span></a><span class="k2">(</span><span class="n">255</span>, <span class="n">255</span>, <span class="n">0</span><span class="k2">)</span>, <span class="n">3</span>.<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 48</span>    <a href="http://www.allegro.cc/manual/al_draw_ellipse"><span class="a">al_draw_ellipse</span></a><span class="k2">(</span>ScreenWidth<span class="k3">/</span><span class="n">2</span>, ScreenHeight <span class="k3">-</span> <span class="n">100</span>, <span class="n">10</span>, <span class="n">5</span>, <a href="http://www.allegro.cc/manual/al_map_rgb"><span class="a">al_map_rgb</span></a><span class="k2">(</span><span class="n">255</span>, <span class="n">0</span>, <span class="n">255</span><span class="k2">)</span>, <span class="n">4</span>.<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 49</span>    <a href="http://www.allegro.cc/manual/al_draw_arc"><span class="a">al_draw_arc</span></a><span class="k2">(</span><span class="n">10</span>, ScreenHeight <span class="k3">-</span> <span class="n">100</span>, <span class="n">10</span>, <span class="n">0</span>, <span class="n">4</span>.<span class="n">0</span>, <a href="http://www.allegro.cc/manual/al_map_rgb"><span class="a">al_map_rgb</span></a><span class="k2">(</span><span class="n">255</span>, <span class="n">0</span>, <span class="n">0</span><span class="k2">)</span>, <span class="n">2</span>.<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 50</span>    <a href="http://www.allegro.cc/manual/al_draw_line"><span class="a">al_draw_line</span></a><span class="k2">(</span><span class="n">100</span>, <span class="n">500</span>, <span class="n">300</span>, <span class="n">500</span>, electricBlue, <span class="n">6</span>.<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 51</span>    <a href="http://www.allegro.cc/manual/al_draw_pixel"><span class="a">al_draw_pixel</span></a><span class="k2">(</span><span class="n">500</span>, <span class="n">500</span>, electricBlue<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 52</span>    <a href="http://www.allegro.cc/manual/al_draw_spline"><span class="a">al_draw_spline</span></a><span class="k2">(</span>points, electricBlue, <span class="n">1</span>.<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 53</span>    <a href="http://www.allegro.cc/manual/al_flip_display"><span class="a">al_flip_display</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 54</span>
<span class="number"> 55</span>    <a href="http://www.allegro.cc/manual/al_rest"><span class="a">al_rest</span></a><span class="k2">(</span><span class="n">10</span>.<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 56</span>
<span class="number"> 57</span>    <a href="http://www.allegro.cc/manual/al_destroy_font"><span class="a">al_destroy_font</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/font"><span class="a">font</span></a><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 58</span>    <a href="http://www.allegro.cc/manual/al_destroy_display"><span class="a">al_destroy_display</span></a><span class="k2">(</span>display<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 59</span>
<span class="number"> 60</span>    <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 61</span><span class="k2">}</span>
</div></div><p>

However it only turns out to be error message below:
</p><pre>
Assertion failed!

Program: C:\Users\b9870\CLionProjects\allegro5_test_c90\cmake-build-debug\allegro5_test_c90.exe
File: C:/dev/allegro_winpkg/universal/allegro/src/misc/vector.c, Line 174

Expression: vec-&gt;_itemsize &gt; 0

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application&#39;s support team for more information.
</pre><p>

Then, since there is only tutorial for Allegro on Code::Blocks and MSVS, I tried installing Code::Blocks and follow the instructions on this page:<br /><a href="https://wiki.allegro.cc/index.php?title=Windows,_Code::Blocks_and_Allegro_5">https://wiki.allegro.cc/index.php?title=Windows,_Code::Blocks_and_Allegro_5</a><br />However, it doesn&#39;t work on both static and dynamic version.</p><p>On static version: (Compile error?)
</p><pre>
gcc.exe -Wall -g -IC:\Allegro5\allegro-x86_64-w64-mingw32-gcc-7.2.0-posix-seh-static-5.2.4.1\allegro\include -c D:\Allegro_CB_test\allegro5_static_test\test.c -o obj\Debug\test.o
g++.exe -LC:\Allegro5\allegro-x86_64-w64-mingw32-gcc-7.2.0-posix-seh-static-5.2.4.1\allegro\lib -o bin\Debug\allegro5_static_test.exe obj\Debug\test.o  -static-libstdc++ -static-libgcc -lallegro_monolith-debug-static -ljpeg -ldumb -lFLAC -lfreetype -lvorbisfile -lvorbis -logg -lphysfs -lpng16 -lzlibstatic -ldsound -lgdiplus -luuid -lkernel32 -lwinmm -lpsapi -lopengl32 -lglu32 -luser32 -lcomdlg32 -lgdi32 -lshell32 -lole32 -ladvapi32 -lws2_32 -lshlwapi  
C:/Program Files/mingw-w64/x86_64-7.2.0-posix-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/7.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -ljpeg
C:/Program Files/mingw-w64/x86_64-7.2.0-posix-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/7.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -ldumb
C:/Program Files/mingw-w64/x86_64-7.2.0-posix-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/7.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lFLAC
C:/Program Files/mingw-w64/x86_64-7.2.0-posix-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/7.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lfreetype
C:/Program Files/mingw-w64/x86_64-7.2.0-posix-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/7.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lvorbisfile
C:/Program Files/mingw-w64/x86_64-7.2.0-posix-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/7.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lvorbis
C:/Program Files/mingw-w64/x86_64-7.2.0-posix-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/7.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -logg
C:/Program Files/mingw-w64/x86_64-7.2.0-posix-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/7.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lphysfs
C:/Program Files/mingw-w64/x86_64-7.2.0-posix-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/7.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lpng16
C:/Program Files/mingw-w64/x86_64-7.2.0-posix-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/7.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lzlibstatic
collect2.exe: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 2 second(s))
</pre><p>

On dynamic version: (Run error)
</p><pre>
Assertion failed!

Program: D:\Allegro_CB_test\allegro5_static_test\bin\Debug\allegro5_static_test.exe
File: C:/dev/allegro_winpkg/universal/allegro/addons/font/text.c, Line 79

Expression: font

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application&#39;s support team for more information.
</pre><p>

I have no idea about what caused these problems, and want to get some suggestions. I can go back to macOS, but still I prefer to do my work on the machine that uses Windows OS more.</p><p>In the worst case, I guess building the whole library on my machine is required, but currently I&#39;m not clear about how to build the library from scratch after some Google search, and feeling like circling in the forest and get stuck....</p><p>(Update)<br />Also, I want to know how to search threads in this forum more efficiently. I want to find recent articles to see if there&#39;s any post with problem similar to mine&#39;s, but it doesn&#39;t provide efficient way to search for posts earlier.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (pairslipper)</author>
		<pubDate>Wed, 28 Mar 2018 21:13:36 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hello pairslipper,</p><p>On our forums, you can use XHTML tags to mark up your post. Use &lt;code&gt;code goes here...&lt;/code&gt; tags to post code, and &lt;pre&gt;preformatted text goes here...&lt;/pre&gt; tags to post console logs. It will make your post much easier to read, and much easier for us to help you. You can edit your post with the little pen and paper icon at the top of your posts.</p><p>The &#39;font&#39; assertion fails because your font failed to load.</p><p>The static compile errors are because you don&#39;t have the dependencies. Or maybe they are named differently in the official &#39;deps&#39; package. I&#39;m not sure.</p><p>The &#39;vec-&gt;item_size &gt; 0&#39; assertion may be coming from anywhere. To figure out why, you need to register an assert handler that divides by zero. This will allow you to catch the assert in your debugger. When the assertion fails, it will trigger the divide by zero, which gdb can catch. At that point, call &#39;backtrace&#39; to see where you are in the function stack.</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">void</span> AssertHandler<span class="k2">(</span><span class="k1">const</span> <span class="k1">char</span><span class="k3">*</span> expr , <span class="k1">const</span> <span class="k1">char</span><span class="k3">*</span> file , <span class="k1">int</span> <a href="http://www.allegro.cc/manual/line"><span class="a">line</span></a>, <span class="k1">const</span> <span class="k1">char</span><span class="k3">*</span> func<span class="k2">)</span> <span class="k2">{</span>
   <a href="http://www.delorie.com/djgpp/doc/libc/libc_624.html" target="_blank">printf</a><span class="k2">(</span><span class="s">"Expression \"%s\" failed on line %d of file %s in function %s\n"</span>,
          expr , <a href="http://www.allegro.cc/manual/line"><span class="a">line</span></a> , file , func<span class="k2">)</span><span class="k2">;</span>
   <span class="k1">int</span> i <span class="k3">=</span> <span class="n">1</span><span class="k3">/</span><span class="n">0</span><span class="k2">;</span>
<span class="k2">}</span>

al_register_assert_handler<span class="k2">(</span>AssertHandler<span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Wed, 28 Mar 2018 21:57:33 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I tried update the post by using tags you mentioned, but it doesn&#39;t look tidier.</p><p>As for problems on font, removing all lines related to fonts and text-drawing on CLion will cause runtime error, without any message shown on screen or console panel.</p><p>I&#39;ll try following these advise tonight. As previously mentioned, I don&#39;t have much experience on C/C++ programing, let me rest for a while...</p><p>(Update) I added the assert handler code and run debug on CLion. But the program terminated as usual and left the same message on console. Now I need to spend additional hours on how to use debugger...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (pairslipper)</author>
		<pubDate>Wed, 28 Mar 2018 22:14:47 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Trust me, everything is much easier to read with formatting.</p><p>I await your reply.</p><p>Don&#39;t know what&#39;s with the runtime error, but that&#39;s why you use a debugger like gdb.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Wed, 28 Mar 2018 22:30:01 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Uninstall Windows 10, re-install Windows 7.  Problem solved. <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />  (sorry, couldn&#39;t help myself)
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Neil Roy)</author>
		<pubDate>Wed, 28 Mar 2018 22:44:40 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Really Neil? I&#39;ve been using Windows 10 with MingW-W64 and Allegro 4 and 5 for a long time now....
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Wed, 28 Mar 2018 23:16:36 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>It&#39;s a joke Edgar, you missed it. Grow a sense of humour. <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Neil Roy)</author>
		<pubDate>Thu, 29 Mar 2018 03:48:51 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>The joke was bound to fail. You&#39;re replacing Windows with Windows.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Thu, 29 Mar 2018 05:43:22 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title"><a href="http://www.allegro.cc/forums/thread/617338/1036228#target">Edgar Reynaldo</a> said:</div><div class="quote"><p>The joke was bound to fail.</p></div></div><p>

I should have known better than to expect any humour out of you.  My bad.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Neil Roy)</author>
		<pubDate>Thu, 29 Mar 2018 08:03:17 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title"><a href="http://www.allegro.cc/forums/thread/617338/1036248#target">Neil Boi</a> said:</div><div class="quote"><p>
</p><div class="quote_container"><div class="title"><a href="http://www.allegro.cc/forums/thread/617338/1036228#target">Edgar Reynaldo</a> said:</div><div class="quote"><p>
The joke was bound to fail. <i>You&#39;re replacing Windows with Windows</i>. 
</p></div></div><p>
I should have known better than to expect any humour out of you. My bad.
</p></div></div><p>

LULZ, wheres <i>your</i> sense of humour?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Thu, 29 Mar 2018 10:18:35 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Now the code works on Code::Blocks with dynamic build (surely there are some dependency issues for the static build). The runtime error seems to be caused by failed font loading.</p><p>It&#39;s glad that I can start working on the windows machine. Still it doesn&#39;t work on CLion, but now I can deferred that until I have free time.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (pairslipper)</author>
		<pubDate>Thu, 29 Mar 2018 11:45:30 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Question : What is CLion?</p><p>You need to download the dependencies or find them and specify their folder by using &#39;-I folder&#39;.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Thu, 29 Mar 2018 11:50:37 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>CLion is an IDE for C/C++ programming. But it&#39;s commercial product and I&#39;m using student trial now. Your question reminds me that it&#39;s better to change IDE on the macOS machine, because it&#39;s not free anymore after graduation...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (pairslipper)</author>
		<pubDate>Thu, 29 Mar 2018 21:46:01 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I recently compiled my Deluxe Pacman 2 game with the latest Allegro which I compiled myself.  It was a static build and compile with zero problems.  It uses bitmap fonts, truetype fonts, loads data from a zip using physfs, you name it.</p><div class="quote_container"><div class="title"><a href="http://www.allegro.cc/forums/thread/617338/1036254#target">pairslipper</a> said:</div><div class="quote"><p>The runtime error seems to be caused by failed font loading.</p></div></div><p>

Seems?  Do you check return values and report when a load fails?</p><p>In my own game I have the following Allegro 5 code for font loading...</p><div class="source-code snippet"><div class="inner"><pre>   <a href="http://www.allegro.cc/manual/ALLEGRO_FONT"><span class="a">ALLEGRO_FONT</span></a> <span class="k3">*</span>font_radio_space_bold <span class="k3">=</span> NULL<span class="k2">;</span>

   font_radio_space_bold <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_load_ttf_font"><span class="a">al_load_ttf_font</span></a><span class="k2">(</span><span class="s">"Fonts/Radio_Space_Bold.ttf"</span>, <span class="n">12</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
   <span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>font_radio_space_bold<span class="k2">)</span> <span class="k2">{</span>
      a5_error<span class="k2">(</span>AT, setting.screen, <span class="s">"Error loading Radio_Space_Bold.ttf."</span><span class="k2">)</span><span class="k2">;</span>
      shut_down<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
      <a href="http://www.delorie.com/djgpp/doc/libc/libc_298.html" target="_blank">exit</a><span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>
   <span class="k2">}</span>
</pre></div></div><p>


In Code::Blocks, I use &quot;allegro_monolith-static&quot;.</p><p>For my linked libs, I have (copy and pasted from my codeblocks project file).  Maybe this will help...</p><pre>
&lt;Linker&gt;
   &lt;Add option=&quot;-m32&quot; /&gt;
   &lt;Add option=&quot;-static&quot; /&gt;
   &lt;Add option=&quot;-static-libgcc&quot; /&gt;
   &lt;Add library=&quot;mingw32&quot; /&gt;
   &lt;Add library=&quot;dumb&quot; /&gt;
   &lt;Add library=&quot;FLAC&quot; /&gt;
   &lt;Add library=&quot;vorbisfile&quot; /&gt;
   &lt;Add library=&quot;vorbis&quot; /&gt;
   &lt;Add library=&quot;freetype&quot; /&gt;
   &lt;Add library=&quot;ogg&quot; /&gt;
   &lt;Add library=&quot;physfs&quot; /&gt;
   &lt;Add library=&quot;png16&quot; /&gt;
   &lt;Add library=&quot;zlibstatic&quot; /&gt;
   &lt;Add library=&quot;gdiplus&quot; /&gt;
   &lt;Add library=&quot;uuid&quot; /&gt;
   &lt;Add library=&quot;kernel32&quot; /&gt;
   &lt;Add library=&quot;winmm&quot; /&gt;
   &lt;Add library=&quot;psapi&quot; /&gt;
   &lt;Add library=&quot;opengl32&quot; /&gt;
   &lt;Add library=&quot;glu32&quot; /&gt;
   &lt;Add library=&quot;user32&quot; /&gt;
   &lt;Add library=&quot;comdlg32&quot; /&gt;
   &lt;Add library=&quot;gdi32&quot; /&gt;
   &lt;Add library=&quot;shell32&quot; /&gt;
   &lt;Add library=&quot;ole32&quot; /&gt;
   &lt;Add library=&quot;advapi32&quot; /&gt;
   &lt;Add library=&quot;ws2_32&quot; /&gt;
   &lt;Add library=&quot;shlwapi&quot; /&gt;
   &lt;Add library=&quot;dsound&quot; /&gt;
   &lt;Add library=&quot;jpeg&quot; /&gt;
   &lt;Add library=&quot;opusfile&quot; /&gt;
   &lt;Add library=&quot;opus&quot; /&gt;
&lt;/Linker&gt;
</pre><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Neil Roy)</author>
		<pubDate>Thu, 29 Mar 2018 22:19:12 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>For static build, I followed the instructions in this page:<br /><a href="https://wiki.allegro.cc/index.php?title=Windows,_Code::Blocks_and_Allegro_5">https://wiki.allegro.cc/index.php?title=Windows,_Code::Blocks_and_Allegro_5</a></p><p>And the error message appeared to be the things I posted in the first article. It seems that some of the libraries can&#39;t be found. I think supposedly they should be packed into the binary build.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (pairslipper)</author>
		<pubDate>Fri, 30 Mar 2018 04:13:40 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>You need the dependencies ( <a href="https://github.com/liballeg/allegro_winpkg/releases/download/1.7.0/allegro_deps-x86_64-w64-mingw32-gcc-7.2.0-posix-seh-1.7.0.zip">https://github.com/liballeg/allegro_winpkg/releases/download/1.7.0/allegro_deps-x86_64-w64-mingw32-gcc-7.2.0-posix-seh-1.7.0.zip</a> ). And then you need to add them to your include folder search path with gcc by using -I folder/include .
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Fri, 30 Mar 2018 09:56:03 +0000</pubDate>
	</item>
</rss>
