delorie.com/archives/browse.cgi | search |
NNTP-Posting-Date: | Fri, 08 Nov 2002 11:48:13 -0600 |
From: | Charles Wilkins <chas AT pcscs DOT com> |
Newsgroups: | comp.os.msdos.djgpp |
Subject: | Re: i686-pc-msdosdjgpp-g++ problems (long) |
Date: | Fri, 08 Nov 2002 12:50:07 -0500 |
Message-ID: | <fqtnsus1c9ns6seotvrsa7m9155ug310v2@4ax.com> |
References: | <lrplsuounbjm9n878rvu4e4sobqofcu437 AT 4ax DOT com> <Pine DOT GSO DOT 4 DOT 21 DOT 0211072301220 DOT 26998-100000 AT neptune DOT calstatela DOT edu> |
X-Newsreader: | Forte Agent 1.92/32.570 |
MIME-Version: | 1.0 |
Lines: | 56 |
NNTP-Posting-Host: | 68.45.75.113 |
X-Trace: | sv3-gWiFnor6ldp8B5/vaneJ1q4/wQCz/fksbUTNpTqQJfC3mAl2TpakHNOqwT+LwZ4JvKLPxofTlHH711y!3CbFhXaJ2l6rSBVstkxxrscOoyWJyvOChQabyjQBsnrFtlfvcb8t1wM8nHfGWrgqI+hlcog= |
X-Complaints-To: | abuse AT comcast DOT com |
X-DMCA-Complaints-To: | dmca AT comcast DOT net |
X-Abuse-and-DMCA-Info: | Please be sure to forward a copy of ALL headers |
X-Abuse-and-DMCA-Info: | Otherwise we will be unable to process your complaint properly |
X-Postfilter: | 1.1 |
To: | djgpp AT delorie DOT com |
DJ-Gateway: | from newsgroup comp.os.msdos.djgpp |
Reply-To: | djgpp AT delorie DOT com |
On Thu, 7 Nov 2002 23:13:43 -0800, "Louis P. Santillan" <lsantil AT calstatela DOT edu> wrote: >You may be missing an issue that continually crops up in porting *nix >software to DOS (or DJGPP): the DOS 8.3 file name limit comes up >constantly and usually appears in some form or another. What the cross >compiler configuration does to get around this is to rename certain files >to be 8.3 compliant. Take a look at some old [ANNOUNCE] messages on this >list and you will se references to it. Flex is one project that must >always deal with this issue (because of the way it generates filenames for >its output). I dont think my specific issue is from a filename problem, but i could be wrong. I am purposely using welcome.exe as the filename which should comply with the dos limitation. The C cross compiler, i686-pc-msdosdjgpp-gcc creates the binaries that can execute in dos. The C++ cross compiler, i686-pc-msdosdjgpp-g++ creates the binaries that cannot execute in dos without creating an exception error. Exiting due to signal SIGSEGV General Protection Fault at eip=0001a11f eax=00000000 ebx=0003eb58 ecx=0003eb58 edx=007cffa0 esi=00000054 edi=00001630 ebp=007cff68 esp=007cff64 program=H:\ROOT\PROJECTS\CPP\TEST\WELCOME.EXE cs: sel=01a7 base=01670000 limit=007dffff ds: sel=01af base=01670000 limit=007dffff es: sel=01af base=01670000 limit=007dffff fs: sel=017f base=00005870 limit=0000ffff gs: sel=01bf base=00000000 limit=0010ffff ss: sel=01af base=01670000 limit=007dffff App stack: [007d0000..00750000] Exceptn stack: [00042c88..00040d48] Call frame traceback EIPs: 0x0001a11f 0x0001a36e 0x0000167e 0x0000d1f8 This happens when I try to execute welcome.exe which was made from i686-pc-msdosdjgpp-g++ (the c++ crosscompiler) >WRT the binary size, seems a tad large but you are probably statically >linking the binary and quite possibly linking the entire >libstdc++.a file. Turn on optimizations, turn on symbol stripping and >watch the file size plummet. Binary size was only a secondary concern. I wasn't sure if the hugh size was an indicator of why the file wont execute under dos. Stripping the debugging information helped greatly with size. Charles
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |