This is the mail archive of the cygwin 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]

Re: Running a program using a DLL under Cygwin

Andrey Repin wrote:
Greetings, Yucong Sun! pretty please...

I think symlink is a cygwin thing.  Windows won't find that DLL (just
like you won't find it using windows explorer.)

Unless he have created a Windows symlink, that is correct.
Explorer, however, may find it, as Cygwin symlinks are Windows LNK files.
Cygwin symlinks can use native Windows format, if you put 'winsymlinks:native export'
in your 'CYGWIN' env var at startup -- preferably in your Win profile.

However, cygwin occasionally has some bugs in how it creates links:
/tmp> touch x
/tmp> ln -s x y /tmp> ll x y
-rw-rw-r--+ 1 0 Oct 10 22:27 x
lrwxrwxrwx  1 6 Oct 10 22:28 y -> /tmp/x
/tmp> cmd /c dir ?|grep '\s[xy]'
10/10/2015  10:32 PM                 0 x
10/10/2015  10:40 PM    <SYMLINK>      y [C:\tmp\x]
/tmp> rm y
/tmp> mklink x y
symbolic link created for y <<===>> x
tmp> cmd /c dir ?|grep '\s[xy]'
10/10/2015  10:32 PM                 0 x
10/10/2015  10:43 PM    <SYMLINK>      y [x]

Normally cygwin can create relative symlinks but for some reason using these names -- in /tmp, it did not.

(if I used a name other than 'y' for the symlink like 'winlink' or 'cyglink'
then they both were relative links)

Go figger...

Also, FWIW Cygwin 'hardlinks' are Windows 'hardlinks'. No significant difference.

So you could use a windows symlink or hardlink created in cygwin
to the location of your 'dll' and it "should" work (but I haven't
tested it)

Problem reports:
Unsubscribe info:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]