如何在Windows 7上使用Cygwin创建一个符号链接

19 浏览
0 Comments

如何在Windows 7上使用Cygwin创建一个符号链接

最近我尝试使用C/C++的本地代码编写一个Android应用程序。问题出现在使用Android NDK时制作符号链接的过程中。经过一些搜索,有人建议使用Cygwin。我已经安装了它。在Windows 7上,我应该如何使用Cygwin创建一个符号链接?

0
0 Comments

问题的出现的原因是在使用Cygwin的Windows 7中,尝试使用"ln -s"创建符号链接时,可能会遇到"bash: mklink: command not found"的错误。为了解决这个问题,可以尝试使用"mklink"命令代替"ln -s"命令。Tony O'Hagan在Stack Overflow的一个回答中建议使用"mklink"命令。此外,还可以在akudo.codes/2018/12/10/mklink-command-in-windows-ubuntu-wsl找到一个脚本,可以简化操作。

0
0 Comments

问题的出现原因:作者在使用Cygwin时想创建一个符号链接,但不知道如何操作。

解决方法:根据作者的经验,需要按照要求设置Cygwin,并安装所需的软件包,如make等。然后使用命令ln -s来创建符号链接。此外,还有在使用ln -s命令时的语法:ln -s target newfile,以及指出了默认行为是创建文本文件。

这是作者在问题解决后的感受,他注意到链接现在已经被重定向了,但不确定是否是预期的结果。

0
0 Comments

问题的原因是在Windows 7上使用Cygwin创建符号链接时遇到困难。解决方法是定义一个名为CYGWIN的环境变量,并将其值设置为"winsymlinks:nativestrict"。此外,还需要以管理员权限运行Cygwin。

根据Cygwin文档,如果将CYGWIN设置为"winsymlinks:native"或"winsymlinks:nativestrict",Cygwin将在支持的文件系统和操作系统版本上创建本机Windows符号链接。"winsymlinks:native"和"winsymlinks:nativestrict"之间的区别在于,如果文件系统支持本机符号链接,但Cygwin由于某种原因无法创建本机符号链接,那么在使用"winsymlinks:native"时,它将退回到创建Cygwin默认符号链接,而使用"winsymlinks:nativestrict"时,symlink(2)系统调用会立即失败。

另外,还需要确保以管理员权限运行Cygwin。可以通过右键单击快捷方式并选择以管理员身份运行,或者设置mintty快捷方式属性中的高级选项卡中的"以管理员身份运行"。

在Windows 8上,将环境变量CYGWIN设置为"winsymlinks:nativestrict"的方法适用。可以参考其他回答中提供的一些细节。

建议参考自己在stackoverflow上的问题和回答,链接如下:

http://stackoverflow.com/questions/18654162

使用CYGWIN=winsymlinks:native是错误的,因为它会导致许多不同的工作流程出现问题。如果可以接受"回退到创建Cygwin默认符号链接",那么为什么还要尝试创建本机符号链接呢?如果有人需要"native",那么他们就需要"native"。唯一正确的选项是"CYGWIN=winsymlinks:nativestrict"!

0