Running a program using a DLL under Cygwin

Linda Walsh cygwin@tlinx.org
Sun Oct 11 05:54:00 GMT 2015


Andrey Repin wrote:
> Greetings, Yucong Sun!
> 
> https://cygwin.com/acronyms/#TOFU 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:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list