<div dir="ltr">Well, after searching more, crtdll.dll lives in c:\Windows\SysWOW64, just seems it is not found by the build process.<div><br></div><div>I copied it straight into C:\MinGW\bin and be it.</div><div><br></div>

<div>But the issue is not there, it is with the time_t 32 bit problem.</div><div><br></div><div>Got a look into the .h files and time_t 32 bit is the 2038 unix year issue, where time_t 64 bit alleviates it.</div><div><br>

</div><div><br></div><div>Here is the part of time.h</div><div><br></div><div><div>#ifndef _TIME32_T_DEFINED</div><div>typedef __int32 __time32_t;</div><div>#define _TIME32_T_DEFINED</div><div>#endif</div><div><br></div>
<div>
#ifndef _TIME64_T_DEFINED</div><div>/* A 64-bit time_t to get to Y3K */</div><div>typedef __int64 __time64_t;</div><div>#define _TIME64_T_DEFINED</div><div>#endif</div><div><br></div><div>#ifndef _TIME_T_DEFINED</div><div>

# if defined(_USE_32BIT_TIME_T)</div><div>   typedef<span class="" style="white-space:pre">        </span>__time32_t time_t;</div><div># else</div><div>   typedef<span class="" style="white-space:pre">        </span>__time64_t time_t;</div>

<div># endif /* _USE_32BIT_TIME_T */</div><div># define _TIME_T_DEFINED</div><div>#endif</div></div><div><br></div><div><br></div><div>So, I guess we need to have some -D_USE_32BIT_TIME_T defined somewhere in CMake and which goes missing...</div>

<div><br></div></div><div class="gmail_extra"><br clear="all"><div><div dir="ltr"><div>---</div><div>Philippe Back</div><div>Dramatic Performance Improvements</div><div>Mob: +32(0) 478 650 140 | Fax: +32 (0) 70 408 027</div>

<div><a href="mailto:Mail%3Aphil@highoctane.be" target="_blank">Mail:phil@highoctane.be</a> | Web: <a href="http://philippeback.eu" target="_blank">http://philippeback.eu</a></div><div>Blog: <a href="http://philippeback.be" target="_blank">http://philippeback.be</a> | Twitter: @philippeback</div>

<div>Youtube: <a href="http://www.youtube.com/user/philippeback/videos" target="_blank">http://www.youtube.com/user/philippeback/videos</a></div><div><br></div><div>High Octane SPRL</div><div>rue cour Boisacq 101 | 1301 Bierges | Belgium</div>

<div><br></div><div>Pharo Consortium Member - <a href="http://consortium.pharo.org/" target="_blank">http://consortium.pharo.org/</a></div><div>Featured on the Software Process and Measurement Cast - <a href="http://spamcast.libsyn.com" target="_blank">http://spamcast.libsyn.com</a><br>

</div><div>Sparx Systems Enterprise Architect and Ability Engineering EADocX Value Added Reseller</div><div> </div><div><br></div></div></div>
<br><br><div class="gmail_quote">On Tue, Nov 19, 2013 at 11:20 AM, Camillo Bruni <span dir="ltr">&lt;<a href="mailto:camillobruni@gmail.com" target="_blank">camillobruni@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

 <br>ok, you just discovered a minor mess... onto fixing it quickly..<br>
<br>
On 2013-11-19, at 11:16, <a href="mailto:phil@highoctane.be">phil@highoctane.be</a> wrote:<br>
<br>
&gt; I found why the vmVersionInfo.h isn&#39;t there...<br>
&gt;<br>
&gt; build.sh contains:<br>
&gt;<br>
&gt; #!bash<br>
&gt;<br>
&gt; if [ ! -e vmVersionInfo.h ]; then<br>
&gt;       ../codegen-scripts/extract-commit-info.sh<br>
&gt; fi<br>
&gt; cmake -G &quot;MSYS Makefiles&quot; .<br>
&gt; make<br>
&gt;<br>
&gt;<br>
&gt; and ../codegen-scripts/extract-commit-info.sh is nowhere to be found from the git clone...<br>
&gt;<br>
&gt; It lives in scripts/<br>
&gt;<br>
&gt; Phil<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; On Tue, Nov 19, 2013 at 11:01 AM, <a href="mailto:phil@highoctane.be">phil@highoctane.be</a> &lt;<a href="mailto:phil@highoctane.be">phil@highoctane.be</a>&gt; wrote:<br>
&gt; I&#39;ve been moving forward with building the VM for Windows from the GitHub sources with MinGW.<br>
&gt;<br>
&gt; Now, to get the thing to compile, I had to replace the oft_t things by _oft_t, same for the 64 flavor.<br>
&gt;<br>
&gt; So, modifiying two header files, one being mingw.h where I put #define oft_t _oft_t at the end.<br>
&gt;<br>
&gt; This did the trick and I now have all plugins/dlls building fine:<br>
&gt;<br>
&gt; FT2Plugin.dll<br>
&gt; libcairo-2.dll<br>
&gt; libeay32.dll<br>
&gt; libfreetype-6.dll<br>
&gt; libfreetype.dll.a<br>
&gt; libFT2Plugin.dll.a<br>
&gt; libpixman-1-0.dll<br>
&gt; libpng-3.dll<br>
&gt; libSqueakFFIPrims.dll.a<br>
&gt; libSqueakSSL.dll.a<br>
&gt; SqueakFFIPrims.dll<br>
&gt; SqueakSSL.dll<br>
&gt; ssleay32.dll<br>
&gt; zlib1.dll<br>
&gt;<br>
&gt; are in results/<br>
&gt;<br>
&gt; Also, to get there, one has to create a vmVersionInfo.h file in platforms\Cross\vm with something in the REVISION_STRING<br>
&gt;<br>
&gt; #define REVISION_STRING &quot;Pharo VM - Philippe Back from GitHub Sources 20131119&quot;<br>
&gt;<br>
&gt; I wonder why this isn&#39;t something automagically generated in the process as it seems that the CI build has something.<br>
&gt;<br>
&gt; The last step is getting Pharo.exe to link but this doesn&#39;t work:<br>
&gt;<br>
&gt; Linking C executable /C/MinGW/msys/1.0/home/Philippe/pharo-vm/results/Pharo.exe<br>
&gt; c:/mingw/bin/../lib/gcc/mingw32/4.8.1/../../../../mingw32/bin/ld.exe: cannot fin<br>
&gt; d -lcrtdll<br>
&gt; collect2.exe: error: ld returned 1 exit status<br>
&gt; make[2]: *** [C:/MinGW/msys/1.0/home/Philippe/pharo-vm/results/Pharo.exe] Error<br>
&gt; 1<br>
&gt; make[1]: *** [CMakeFiles/Pharo.dir/all] Error 2<br>
&gt; make: *** [all] Error 2<br>
&gt;<br>
&gt;<br>
&gt; Looks like a library path is wrong or else.<br>
&gt;<br>
&gt; Idea?<br>
&gt;<br>
&gt; Also, there are quite a number of warnings spit out during the compiling process all over the place, more than the Mac VM build I think.<br>
&gt;<br>
&gt; e.g.<br>
&gt;<br>
&gt; [ 92%] Building C object CMakeFiles/Pharo.dir/C_/MinGW/msys/1.0/home/Philippe/ph<br>
&gt; aro-vm/platforms/win32/vm/sqWin32Prefs.c.obj<br>
&gt; In file included from C:/MinGW/msys/1.0/home/Philippe/pharo-vm/platforms/Cross/v<br>
&gt; m/sq.h:193:0,<br>
&gt;                  from c:/MinGW/msys/1.0/home/Philippe/pharo-vm/platforms/win32/v<br>
&gt; m/sqWin32Prefs.c:20:<br>
&gt; C:/MinGW/msys/1.0/home/Philippe/pharo-vm/platforms/win32/vm/sqPlatformSpecific.h<br>
&gt; :52:0: warning: &quot;VM_EXPORT&quot; redefined [enabled by default]<br>
&gt;  #  define VM_EXPORT __declspec( dllexport )<br>
&gt;  ^<br>
&gt; In file included from c:/MinGW/msys/1.0/home/Philippe/pharo-vm/platforms/win32/v<br>
&gt; m/sqWin32Prefs.c:20:0:<br>
&gt; C:/MinGW/msys/1.0/home/Philippe/pharo-vm/platforms/Cross/vm/sq.h:48:0: note: thi<br>
&gt; s is the location of the previous definition<br>
&gt;  #define VM_EXPORT<br>
&gt;  ^<br>
&gt; [ 93%] Building C object CMakeFiles/Pharo.dir/C_/MinGW/msys/1.0/home/Philippe/ph<br>
&gt; aro-vm/platforms/win32/vm/sqWin32Utils.c.obj<br>
&gt; In file included from C:/MinGW/msys/1.0/home/Philippe/pharo-vm/platforms/Cross/v<br>
&gt; m/sq.h:193:0,<br>
&gt;                  from c:/MinGW/msys/1.0/home/Philippe/pharo-vm/platforms/win32/v<br>
&gt; m/sqWin32Utils.c:14:<br>
&gt; C:/MinGW/msys/1.0/home/Philippe/pharo-vm/platforms/win32/vm/sqPlatformSpecific.h<br>
&gt; :52:0: warning: &quot;VM_EXPORT&quot; redefined [enabled by default]<br>
&gt;  #  define VM_EXPORT __declspec( dllexport )<br>
&gt;  ^<br>
&gt; In file included from c:/MinGW/msys/1.0/home/Philippe/pharo-vm/platforms/win32/v<br>
&gt; m/sqWin32Utils.c:14:0:<br>
&gt; C:/MinGW/msys/1.0/home/Philippe/pharo-vm/platforms/Cross/vm/sq.h:48:0: note: thi<br>
&gt; s is the location of the previous definition<br>
&gt;  #define VM_EXPORT<br>
&gt;<br>
&gt; Phil<br>
&gt;<br>
<br>
<br></blockquote></div><br></div>