Date: Mon, 31 Aug 1998 16:41:15 +0300 (IDT) From: Eli Zaretskii To: Anton Thimet cc: djgpp AT delorie DOT com Subject: Re: DJGPP In-Reply-To: <199808310956.LAA15920@lisa.freising-pop.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Precedence: bulk On Mon, 31 Aug 1998, Anton Thimet wrote: > - I want to use the standard C++ library so I downloaded & installed > lgp2811b.zip. Wrong zip file. The STL library is called libstdcxx.a, and it is in gpp281b.zip (which you need to install anyway, since the C++ compiler is there). The headers are also in gpp281b.zip. You might consider tossing lgp2811b.zip altogether. It includes GNU-specific classes that nobody maintains anymore. > What library do I need to link? The FAQ should explain that. You need to use gpp.exe or gxx.exe to link, and then they will automatically instruct the linker to look in libstcxx.a. > - DJGPP natively supports LFNs under Win95 (great!!). But some > functions still work with short names, i.e. findfirst() & findnext() [or > am I mistaken here?]. You are mistaken, finfirst/findnext support LFN as well. I guess you didn't set LFN=y in the environment, did you? The LFN support is disabled by default unless you set LFN=y. > I tried to use the bare DOS INT21/71xx interrupts > to get this functionality. However, int86() does not translate pointers > correctly for the 71xx functions.... int86 doesn't translate pointers at all. See section 18.1 in the FAQ. You need to use __dpmi_int instead, and you need to move the data to the special transfer buffer allocated in low memory (use the variable __tb declared in ). Chapter 18 of the FAQ is a strongly recommended reading before messing with all this (and you certainly do NOT need it to get LFN support, which is completely transparent and automatic). > What can I do? Is there a way to translate DJPP's 32-bit "pointer" into > something that a DOS interrupt would accept? FAQ section 18.2, 18.3 and 18.4 explain this. Again, you shouldn't need this for LFN support. > - The FAQs mention that there are no INT21/71xx functions under WinNT > so LFNs are not supported. Is there a way to access NT long filenames > thru some other sort of DOS interrupt? Microsoft didn't leave any easy ways. The only way is the experimental LFN driver written by a frustrated DJGPP user. Search the DJGPP forum archives (http://www.delorie.com/djgpp/mail-archives/) for announcement and URL.