Problem compiling perl module Term::ReadKey under cygwin

Chris Faylor cgf@cygnus.com
Wed Jun 14 22:41:00 GMT 2000


On Thu, Jun 15, 2000 at 12:41:51AM -0400, Charles S. Wilson wrote:
>Steve -
>  Worked for me -- but I had to create E:\tmp. A few clues about my
>setup:
>
>F:\cygwin == /
>E:\ = /e
>$HOME = /e/Users/cwilson
>
>I ran cpan as 'cwilson', building in /e/Users/cwilson/.cpan/*.  So, the
>'CURRENT DRIVE' was E: even though perl is installed into /usr/local
>(F:\cygwin\usr\local).
>
>CYGWIN LIST:
>
>I tracked down the problem: the choose_temp_base() routine in libiberty
>(which is linked by dllwrap.exe) defines '\\' as the path separator on
>all _WIN32 platforms. This routine checks the environment variable
>$TMPDIR, $TMP, and $TEMP, followed by {DIRSEP}tmp, and
>{DIRSEP}usr{DIRSEP}tmp. So, in my case $TEMP=/tmp. Then, the routine
>adds {DIRSEP}ccXXXXXX where 'X' is a digit.
>
>Therefore, '/tmp\ccXXXXXX'.
>
>To whom should a patch for libiberty be sent?

This is the code in the current libiberty:

ifndef IN_GCC
#if defined (__MSDOS__) || (defined (_WIN32) && ! defined (__CYGWIN__) && ! defined (_UWIN))
#define DIR_SEPARATOR '\\'
#endif
#endif

It should do the correct thing for cygwin now, so there's no need to send
a patch to anyone.

cgf

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com



More information about the Cygwin mailing list