Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Message-ID: <3C0973D1.A3019B15@beamreachnetworks.net> Date: Sat, 01 Dec 2001 16:20:33 -0800 From: "Eric M. Monsler" X-Mailer: Mozilla 4.76 [en] (WinNT; U) X-Accept-Language: en MIME-Version: 1.0 To: rahul_cali_us AT yahoo DOT com CC: cygwin AT cygwin DOT com Subject: Re: problem with cygwin version 1.3.4 cross compilation using gcc References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Rahul, The problem is with the lines: > (void) sprintf(tempdirname,"/var/testinstall"); > (void) printf("now creating %s directory\n", tempdirname); > if((mkdir(tempdirname,0777)) != 0) throw -1; > (void) sprintf(tempdirname,"/var/testinstall/testcygwin"); > (void) printf("now creating %s directory\n", tempdirname); > if((mkdir(tempdirname,0777)) != 0) throw -1; Correct? Even if the mkdir function goes through the cygwin1.dll (it may be a simple wrapper for the win32 equivalent, for all I know), the cygwin1.dll has no idea where you have put the root of the cygwin tree. The default is probably C:\cygwin, but I could have it in D:\local\cygwin if I prefer. I would suspect that the registry contains the information as to where the / of a POSIX path is mapped, but however it is stored, your target PC doesn't have it, and won't, unless you install cygwin. Either: 1) Install cygwin on the target PC, so that / has a defined location. 2) Use all Windows pathnames. 3) Hack and kludge registry, etc., to pretend that cygwin is installed. If you choose 3), don't tell your users to ask for installation support here! Eric -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/