我们的开发人员使用基于Windows和Unix的操作系统.因此,在Unix机器上创建的符号链接成为Windows开发人员的问题.在windows(msysgit)中,符号链接将转换为文本文件,其中包含指向其所指向文件的路径.相反,我想将符号链接转换为实际的Windows符号链接.
我需要的(更新的)解决方案是:
我没有实现这个,但我相信这是解决这个问题的可靠方法.
问题:
当我尝试从Git Bash shell创建一个符号链接时,它每次都会失败:
$ ln -s /c/Users/bzisad0/Work testlink
ln: creating symbolic link `testlink' to `/c/Users/bzisad0/Work': Permission denied
Run Code Online (Sandbox Code Playgroud)
除了提供错误消息之外,它唯一能做的就是创建一个名为的空目录(在本例中)testlink
.
我没有看到ln
可执行文件有任何问题.例如,它由我拥有并标记为可执行文件:
$ which ln
/bin/ln
$ ls -hal /bin/ln
-rwxr-xr-x 1 BZISAD0 Administ 71k Sep 5 11:55 /bin/ln
Run Code Online (Sandbox Code Playgroud)
我也拥有当前目录(~
,即/c/Users/bzisad0
):
$ ls -dhal .
drwxr-xr-x 115 BZISAD0 Administ 40k Sep 5 12:23 .
Run Code Online (Sandbox Code Playgroud)
我有管理权限,我尝试用"以管理员身份运行"打开Git Bash shell,但这没有任何区别.
我尝试打开Windows属性ln.exe
并将权限级别设置为"以管理员身份运行此程序",但这没有帮助.
我已经进入Windows中的安全性 - >高级属性,并使自己(而不是管理员组)成为所有者,但这也没有解决任何问题.
我不知所措.我不知道这个错误消息最终是来自ln
Bash,还是来自Windows,或者我怎么可能缺少权限.我怎样才能深究这一点?
在Eclipse中,我可以将源文件夹添加到我的android项目中作为"链接的源文件夹".如何在Android Studio中实现相同的功能?
或者是否可以添加外部文件夹来构建gradle?
最近的NTFS和Windows实现了符号链接:
linkd
或junction
工具.mklink
工具以来,NTFS符号链接也可用作符号链接(用于文件和目录).但是在Cygwin 1.7(安装在Windows 7上)上,ln -s
创建了一个文本文件.
在Cygwin上:
$ ln -s -v target mylink
`mylink' -> `target'
Run Code Online (Sandbox Code Playgroud)
在MinGW(或你最喜欢的编辑):
$ cat mylink
!<symlink>ÿþt a r g e t
Run Code Online (Sandbox Code Playgroud)
是否有可能告诉Cygwing使用NTFS交接点或NTFS符号链接?
其他问题:MinGW上有这个吗?
我想在我的PATH中添加一些dirs.不幸的是,这些目录位于包含空间的Windows路径中(如文档和设置)
我没有尝试过:
创建一个变量:
43598811@E250BZD20015026 ~
$ winhome="/cygdrive/c/Documents\ and\ Settings/43598811/"
43598811@E250BZD20015026 ~
$ cd $winhome
bash: cd: /cygdrive/c/Documents\: No such file or directory
43598811@E250BZD20015026 ~
$ cd "$winhome"
bash: cd: /cygdrive/c/Documents\ and\ Settings/43598811/: No such file or directory
Run Code Online (Sandbox Code Playgroud)
创建别名:
43598811@E250BZD20015026 ~
$ alias winhome="/cygdrive/c/Documents\ and\ Settings/43598811/"
43598811@E250BZD20015026 ~
$ winhome
bash: /cygdrive/c/Documents and Settings/43598811/: is a directory
43598811@E250BZD20015026 ~
$ cd winhome
bash: cd: winhome: No such file or directory
Run Code Online (Sandbox Code Playgroud)
使用软链接: 它正在工作......但我不想使用它
有什么建议吗?
我正在尝试为Android的OpenSSL1.0.1c的(.so)文件生成共享库.我发现他们在Android脚本中添加了三个用于编译Android的选项.
./Configure android-armv7 (or)
./Configure android-x86 (or)
./Configure android
Run Code Online (Sandbox Code Playgroud)
一旦我配置了操作系统,然后尝试编译,它的抛出错误.目前我正在使用x86 windows7并安装了Cygwin,Android sdk R20,Android NDK r8
sh-4.1$ make
making all in crypto...
make[1]: Entering directory `/cygdrive/d/SourceCodes/OpenSSL/openssl-1.0.1c/crypto'
gcc -I. -I.. -I../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -march=armv7-a -mandroid -I/include -B/lib -O3 -fomit-frame-pointer -Wall -DOPENSSL_BN_ASM_MONT -DOP
ENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DGHASH_ASM -c -o cryptlib.o cryptlib.c
cc1: error: unrecognized command line option "-mandroid"
cryptlib.c:1:0: error: bad value (armv7-a) for -march= switch
<builtin>: recipe for target `cryptlib.o' failed
make[1]: *** [cryptlib.o] Error 1
make[1]: Leaving …
Run Code Online (Sandbox Code Playgroud)