[M3devel] NT386GNU status

Jay jayk123 at hotmail.com
Tue Jan 15 14:34:25 CET 2008


I can build a lot of std, at least up to m3ui.
However..nothing works.
Everything crashes.
In order to build std, I copied back the NT386 cm3 and mklib, though the config sets TARGET=NT386GNU and runs cm3cg. (i.e. I'm not just using the NT386 backend!)
The crash is what I mentioned the other day:
D:\>\cygwin\bin\gdb \dev2\cm3.2\m3-sys\cm3\NT386GNU\cm3.exeGNU gdb 6.5.50.20060706-cvs (cygwin-special)Copyright (C) 2006 Free Software Foundation, Inc.GDB is free software, covered by the GNU General Public License, and you arewelcome to change it and/or distribute copies of it under certain conditions.Type "show copying" to see the conditions.There is absolutely no warranty for GDB.  Type "show warranty" for details.This GDB was configured as "i686-pc-cygwin"...(gdb) runStarting program: D:/dev2/cm3.2/m3-sys/cm3/NT386GNU/cm3.exeLoaded symbols for /cygdrive/d/WINDOWS/system32/ntdll.dllLoaded symbols for /cygdrive/d/WINDOWS/system32/kernel32.dllLoaded symbols for /cygdrive/d/WINDOWS/system32/advapi32.dllLoaded symbols for /cygdrive/d/WINDOWS/system32/rpcrt4.dllLoaded symbols for /cygdrive/d/WINDOWS/system32/gdi32.dllLoaded symbols for /cygdrive/d/WINDOWS/system32/user32.dllLoaded symbols for /cygdrive/d/WINDOWS/system32/msvcrt.dllLoaded symbols for /cygdrive/d/WINDOWS/system32/wsock32.dllLoaded symbols for /cygdrive/d/WINDOWS/system32/ws2_32.dllLoaded symbols for /cygdrive/d/WINDOWS/system32/ws2help.dll
Program received signal SIGSEGV, Segmentation fault.0x00000000 in ?? ()(gdb) bt#0  0x00000000 in ?? ()#1  0x005de831 in RTLinker__FindModules (M3_DjPxE3_m=0x682340)    at RTLinker.m3:182#2  0x005de5fb in RTLinker__AddUnitI (M3_DjPxE3_m=0x682340) at RTLinker.m3:111#3  0x005de6b0 in RTLinker__AddUnit (M3_DjPxE5_b=0x603fd0) at RTLinker.m3:122#4  0x005de34d in RTLinker__InitRuntime (M3_AcxOUs_p_argc=0,    M3_AJWxb1_p_argv=0x3f2bf0, M3_AJWxb1_p_envp=0x3f24c0,    M3_AJWxb1_p_instance=0x1) at RTLinker.m3:42#5  0x00401315 in main (argc=1, argv=0x3f24c0, envp=0x3f2bf0) at _m3main.mc:3(gdb) qThe program is running.  Exit anyway? (y or n) y
D:\>
Oh, m3ui and related are broken due to:
D:\dev2\cm3.2\m3-tools\m3bundle\NT386GNU\m3bundle -name formseditBundle -FD:\DOCUME~1\Jay\LOCALS~1\Temp\qknew source -> compiling FormsEditVBT.i3new source -> compiling formseditBundle.i3new source -> compiling FormsEditVBT.m3new source -> compiling FormsEdit.m3new source -> compiling formseditBundle.m3 -> linking formsedit.exeD:\dev2\cm3.2/m3-ui\ui\NT386GNU\m3ui.lib.sa(WinTrestle.mo): In function `WinTrestle__ButtonEvent':WinTrestle.m3:1843: undefined reference to `WindowFromPoint at 4'collect2: ld returned 1 exit status"D:\\dev2\\cm3.2\m3-sys\cminstall\src\config\NT386GNU", line 583: quake runtimeerror: link failed, see D:\dev2\cm3.2\m3-ui\formsedit\NT386GNU\formsedit.lst for more information
\mingw\bin\nm \MinGW\lib\libuser32.a | findstr WindowFromPoint00000000 T _WindowFromPoint at 800000000 I __imp__WindowFromPoint at 8
Maybe Tony will fix my __stdcall work. :)Or maybe the problem is the declaration.Or maybe I can confirm it is passing a small struct by pointer instead of by referenceand just write a little translation thunk. But also see why NT386 works.Not a big deal. Trestle can wait.
If anyone wants to try this stuff out, debug, I can either share diffs or commit them.They are actually pretty small.I just have to look into the definitions of the runtime linker/binder stuff and/orthe assembly, see if there's some disconnect somewhere.
 
Other gdb above, this is all with mingwin + msys.
They are enough to build cm3cg.
mingwin should suffice for the rest.
 
The ld that comes with the mingwin that free Qt gives you is too old, from around 2004.
It doesn't support "response files", which are needed for building some packages due to command line length.
The change was made circa 2005. Current "released" Mingwin works (I didn't use "technology preview")
 
Probably I'll take a break for now.
 - Jay
_________________________________________________________________
Share life as it happens with the new Windows Live.
http://www.windowslive.com/share.html?ocid=TXT_TAGHM_Wave2_sharelife_012008
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20080115/5d611bbc/attachment-0001.html>


More information about the M3devel mailing list