This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hi, I have a problem when trying to execute relative symlinks located on network shares: when I create such a symlink, Cygwin does not find the pointed-to executable and continues down the PATH. Bash does not have the problem because I think it does not rely on find_exec to find executables, but scans the PATH itself. Perl and the smaller C program given hereafter use execvp (which calls find_exec) and fail. cat >callgcc.c <<EOF #include <unistd.h> #include <stdlib.h> int main(void) { char *argv[] = { "gcc", "--version", NULL }; execvp("gcc", argv); perror("callgcc"); exit(EXIT_FAILURE); } EOF To illustrate the problem, I need to have access to a network share directly mounted (via mount) using the Windows share name (//machine/account). Here is a complete setup. My $HOME is not on the same network share than the one I'm using for the example. mount -buf '//machine/account' /home/account cd /home/account mkdir t cd t ln -s /usr/bin/gcc-2.exe foo.exe ln -s ../t/foo.exe gcc.exe cd $HOME gcc -o callgcc callgcc.c # the small program above PATH=/home/account/t:$PATH ./callgcc => gcc 3.2 ! The relevant output of strace is in attachment here.
Attachment:
fe-without-netuse
Description: Binary data
The output should be gcc 2.95.3-10, since the gcc.exe in /home/account/t points to foo.exe which points to /usr/bin/gcc-2.exe. If I do the following: net use r: '\\machine\account' umount -u /home/account mount -buf r: /home/account the behavior is correct. The relevant output of strace is in attachment here.
Attachment:
fe-with-netuse
Description: Binary data
The problem seems to be around symlink_info::check, performing an unwanted side effect on the analyzed path in one case but not the other. The output of "cygcheck -s" is in attachment here.
Attachment:
check
Description: Binary data
Let me know if more information is needed. Thanks for your time, -- Daniel Villeneuve AD OPT Technologies Inc.
-- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |