X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f X-Recipient: djgpp AT delorie DOT com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=kXU5wK3EaTrRH3AbGKTeNcm/RQfPnrj4uAcHzJqSj3U=; b=k6+E3B4tqakdV5S7l4Rd3us4c42PWfb0MKS9wW6c2pT4IK9tHRPhSh6lrVfZdnvxnT r8wR7z6+4jgTwNljLT9H8HVe0RMhe46LCBPHZNTtgNBIKAvZsMAg2qJDqkH1Eq9z5ME/ 1Xb3u+rE1H7QYB4HllVnP7pFZSuhlgumYaOs80WPdiTN4D0YWvimGltbOfODNZkZFMJW W+TIZtyjNp8VqaPspFyMjLkFqg62sawpBkJJ/D/HmiArAE5Vd56d8JIzuu3HuhVJVEeh flbvGY0Uy2ukZEgbdHS7H03lfcc1EdkqF2MOtbNMFpBZPkRMMzsnFb4yRZKJvA8sZL44 Om7Q== MIME-Version: 1.0 X-Received: by 10.52.91.202 with SMTP id cg10mr850483vdb.85.1372220244617; Tue, 25 Jun 2013 21:17:24 -0700 (PDT) In-Reply-To: References: <713e6460-511d-4b27-a9a5-b07cc63fd02d AT googlegroups DOT com> Date: Tue, 25 Jun 2013 21:17:24 -0700 Message-ID: Subject: Re: Rebuilding 2.04 from source From: Louis Santillan To: djgpp AT delorie DOT com Content-Type: multipart/alternative; boundary=bcaec5015cf73bf78a04e006ec8f Reply-To: djgpp AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk --bcaec5015cf73bf78a04e006ec8f Content-Type: text/plain; charset=ISO-8859-1 So rugxulo & Rod are following. I am looking to build DJGPP completely from scratch on a DOS box. If you reference typical GCC porting guides [1][2][3][4], you start by building binutils, then GCC's deps (if using 3.x or later), then GCC, all using the typical ./configure && make && make install. -L [1] http://wiki.osdev.org/DJGPP [2] http://wiki.osdev.org/C%2B%2B_Bare_Bones [3] http://wiki.osdev.org/GCC_Cross-Compiler [4] http://virtuallyfun.superglobalmegacorp.com/?p=333 On Tue, Jun 25, 2013 at 9:44 AM, wrote: > Hi, > > On Monday, June 24, 2013 3:51:14 PM UTC-5, Rod Pemberton wrote: > > > > My results with configure scripts have been it either works or it > > doesn't. When it doesn't, generally the code is using something > > the DJGPP doesn't support. When it does, the app compiles for > > DJGPP. I.e., if the configure script doesn't work, it's a strong > > indication it won't compile without some work. > > I'd honestly rather roll my own tools than use those. Well, the fact > that it doesn't barely work on DJGPP anyways makes that almost > unavoidable. > > > MinGW in DOS with HX... Interesting. How many functions are in > > MSVCRT? I.e., would it be easy to port MinGW to DOS? > > I don't think the full MinGW environment works, but I've not tried. > Some standalone tools (or those compiled by) do work. E.g. Oxford > Oberon or TinyC (often needing HDPMI=32 or DPMILDR=136). BTW, > TinyC had a big update recently. > > MSVCRT is a "known .DLL", originally (I think?) from MSVC 6. MinGW > and TinyC use it, but OpenWatcom (thankfully) doesn't. It's very > proprietary, so I'm not sure (at least in Express Editions) you can > share it with anyone. (There are other .DLLs from other MS compilers.) > It only supports C89 as (IIRC) MS still do not intend to support > anything newer except via C++. > > Like I said, newer ReactOS .DLL doesn't work, but older 0.3.14 > MSVCRT.DLL seems to work with HX, at least for the very few apps > I tried. > > I don't know what "port MinGW to DOS" means, but I'm very very > skeptical. > > > My first question to Louis is how could MinGW rebuild DJGPP > > without POSIX support? CygWin has POSIX support. > > Presumably MinGW added a few POSIX stubs as GCC wouldn't run without > such. > > > My second question is to Louis is why you're rebuilding version > > 2.04? 2.04 doesn't work as well with DOS as 2.03. There are some > > definate bugs with it, at least with MS-DOS v7.10. IIRC, 2.04 is > > designed to work better in a Windows XP console ("dosbox") window, > > not real-mode DOS. > > 2.04 (circa 2003) "mostly" works fine for everything I tested. Sure, > there are some rare bugs, but they were fixed in CVS (not that I > really tried that). The only problem with 2.04 is that it wasn't > as heavily tested in all environments as 2.03p2. Plus, there's been > no release manager nor major interest since it was always "good > enough" for the main developers. At least, that's what little I > recall understanding about it. I don't have anything against > 2.03p2, but I'm not sure that's totally perfect either, for > various minor reasons. > > > Rugxulo, I know I need to get an email account and get on "DOS > > ain't dead forums"... > > No pressure! :-) I know you hate email, but perhaps GNU PG would > help?? > > > But, until then, could you do me another > > favor and let Japheth know I posted a patch for HIMEMX to > > comp.os.msdos.programmer? It supports multiple 001 E820h memory > > blocks above 1MB. If you recall, you posted a message or two there > > for me previously discussing the issue. > > Sure, but keep in mind that Japheth long ago disclaimed any hold > over HimemX, so he's not really a maintainer (anymore, if ever). > IIRC, he even refused the simple "jmp $+2" 386 patch. :-( > > Though worst case, I'll just try to mirror your patch to iBiblio. > > > If you do, thanks and sorry for the trouble... > > No trouble, but my usefulness is limited. But I've gone ahead and > posted there, so we'll see what he says. > --bcaec5015cf73bf78a04e006ec8f Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
So rugxulo & Rod are following. =A0I am looking to bui= ld DJGPP completely from scratch on a DOS box. =A0If you reference typical = GCC porting guides [1][2][3][4], you start by building binutils, then GCC&#= 39;s deps (if using 3.x or later), then GCC, all using the typical ./config= ure && make && make install.

-L




On Tue, Jun 25, 2013 at 9:44 AM, <rugxulo AT gmail DOT com> wrote:
Hi,

On Monday, June 24, 2013 3:51:14 PM UTC-5, Rod Pemberton wrote:
>
> My results with configure scripts have been it either works or it
> doesn't. =A0When it doesn't, generally the code is using somet= hing
> the DJGPP doesn't support. =A0When it does, the app compiles for > DJGPP. =A0I.e., if the configure script doesn't work, it's a s= trong
> indication it won't compile without some work.

I'd honestly rather roll my own tools than use those. Well, the f= act
that it doesn't barely work on DJGPP anyways makes that almost
unavoidable.

> MinGW in DOS with HX... =A0Interesting. =A0How many functions are in > MSVCRT? =A0I.e., would it be easy to port MinGW to DOS?

I don't think the full MinGW environment works, but I've not = tried.
Some standalone tools (or those compiled by) do work. E.g. Oxford
Oberon or TinyC (often needing HDPMI=3D32 or DPMILDR=3D136). BTW,
TinyC had a big update recently.

MSVCRT is a "known .DLL", originally (I think?) from MSVC 6. MinG= W
and TinyC use it, but OpenWatcom (thankfully) doesn't. It's very proprietary, so I'm not sure (at least in Express Editions) you can
share it with anyone. (There are other .DLLs from other MS compilers.)
It only supports C89 as (IIRC) MS still do not intend to support
anything newer except via C++.

Like I said, newer ReactOS .DLL doesn't work, but older 0.3.14
MSVCRT.DLL seems to work with HX, at least for the very few apps
I tried.

I don't know what "port MinGW to DOS" means, but I'm very= very
skeptical.

> My first question to Louis is how could MinGW rebuild DJGPP
> without POSIX support? =A0CygWin has POSIX support.

Presumably MinGW added a few POSIX stubs as GCC wouldn't run with= out
such.

> My second question is to Louis is why you're rebuilding version > 2.04? =A02.04 doesn't work as well with DOS as 2.03. =A0There are = some
> definate bugs with it, at least with MS-DOS v7.10. =A0IIRC, 2.04 is > designed to work better in a Windows XP console ("dosbox") w= indow,
> not real-mode DOS.

2.04 (circa 2003) "mostly" works fine for everything I test= ed. Sure,
there are some rare bugs, but they were fixed in CVS (not that I
really tried that). The only problem with 2.04 is that it wasn't
as heavily tested in all environments as 2.03p2. Plus, there's been
no release manager nor major interest since it was always "good
enough" for the main developers. At least, that's what little I recall understanding about it. I don't have anything against
2.03p2, but I'm not sure that's totally perfect either, for
various minor reasons.

> Rugxulo, I know I need to get an email account and get on "DOS > ain't dead forums"...

No pressure! =A0:-) =A0I know you hate email, but perhaps GNU PG woul= d
help??

> But, until then, could you do me another
> favor and let Japheth know I posted a patch for HIMEMX to
> comp.os.msdos.programmer? =A0It supports multiple 001 E820h memory
> blocks above 1MB. =A0If you recall, you posted a message or two there<= br> > for me previously discussing the issue.

Sure, but keep in mind that Japheth long ago disclaimed any hold
over HimemX, so he's not really a maintainer (anymore, if ever).
IIRC, he even refused the simple "jmp $+2" 386 patch. =A0:-(

Though worst case, I'll just try to mirror your patch to iBiblio.

> If you do, thanks and sorry for the trouble...

No trouble, but my usefulness is limited. But I've gone ahead and=
posted there, so we'll see what he says.

--bcaec5015cf73bf78a04e006ec8f--