Message-ID: <35C006AD.EB62F036@mailexcite.com> Date: Thu, 30 Jul 1998 01:37:50 -0400 From: Doug Gale MIME-Version: 1.0 Newsgroups: comp.os.msdos.djgpp Subject: Re: rsxntdj instalation References: <000801bdbaa3$5edcb4c0$1a1f1bc4 AT enterprise-z> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit NNTP-Posting-Host: oshawappp84.idirect.com Organization: "Usenet User" Lines: 43 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk Jorge Iván Meza Martínez wrote: > I am trying to install "RSXNTDJ 1.3.1", I have the DJGPP 2.8.1 and works > fine. > > i am trying to compile a test program: > > #include // Windows.h einlesen > int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR > lpCmdLine, int nCmdShow) > { > MessageBox (NULL, "Hello Win32", "First App", MB_OK); > return 0; > } > > with gcc -Zwin32 test.c -o test.exe > > i think that the compiler stage is well because I get a test.o file, but > linker fails: > "d:/djgpp/bin/ld.exe: cannot open -lc_app: No such file or directory > ENOENT )" [snip] I had the same problem, but recognized that the problem was due to the fact that there are two sets of libraries: one for single-threaded apps, and one for multi-threaded apps. These two sets of libraries are stored in the lib/st and lib/mt directories in the rsxntdj directory. I solved this problem by making a small modification to the specs file. To make this fix: 1. open up your specs file (your wonderfully detailed message tells me it is at d:\djgpp\contrib\RSXNTDJ/lib/specs) 2. Find the *link section. 3. Append this text to the line: %{Zmt: -Ld:\djgpp\contrib\RSXNTDJ/lib/mt} %{!Zmt: -Ld:\djgpp\contrib\RSXNTDJ/lib/st} This effectively adds a new gcc option. If you add the command line option "-Zmt" it will search the multi-threaded library directories. If you don't add the option, it will search the single-thread library directory. This will fix the compile error you are getting.