我正在寻找在没有虚拟机的情况下在Windows上运行bash 4.2的方法。
我已经尝试过使用CygWin,但你可以安装的最新版本是bash 4.1,我没有找到在CygWin上安装bash 4.2的方法。
在这里,开发人员告诉他将bash 4.2移植到CygWin,但它已经在两年前编写过了。
其他软件如win-bash或MinGW都有旧版本的bash。
那么,有没有办法在Windows上安装bash 4.2?
编辑:
CygWin回复:它可用于64位。虽然不是32位,但我们仍在等待更新(启用WORDEXP_OPTION以修复wordexp(3)并启用对可加载内置的支持)...
您可能会在cygwinports中找到32位版本。
但我刚刚在CygWin上找到了64位的Bash 4.1。 http://cygwin.com/cgi-bin2/package-grep.cgi?grep=bash&arch=x86_64
那时候我不知道。:S
更新了 CygWin说我需要自己安装Bash 4.2
编辑2:选项:在CygWin上安装Bash 4.2:
我有$ gcc --version - > gcc(GCC)4.8.2,$ make --version - > GNU Make 4.0,我在CygWin 64Bits上安装了readline ,我收到此错误:
rm -f bash.exe
gcc -L./builtins -L./lib/readline -L./lib/readline -L./lib/glob -L./lib/tilde -L./lib/sh -L./lib/termcap -g -O2 -o bash.exe shell.o eval.o y.tab.o general.o make_cmd.o print_cmd.o dispose_cmd.o execute_cmd.o variables.o copy_cmd.o error.o expr.o flags.o jobs。 o subst.o hashcmd.o hashlib.o mailcheck.o trap.o input.o unwind_prot.o pathexp.o sig.o test.o version.o alias.o array.o arrayfunc.o assoc.o braces.o bracecomp .o bashhist.o bashline.o list.o stringlib.o locale.o findcmd.o redir.o pcomplete.o pcomplib.o syntax.o xmalloc.o -lbuiltins -lglob -lsh -lreadline -lhistory ./lib/termcap /libtermcap.a -ltilde lib / intl / libintl.a -ldl
general.o:Enlaunción`make_absolute':
/bash-4.2/general.c:630:参考一个`cygwin_conv_to_full_posix_path'sin definir
/bash-4.2/general.c:630:(.text+0xcc9):reubicacióntripadapara ajustar:R_X86_64_PC32 contraelsímbolo`cygwin_conv_to_full_posix_path'sindefinir
collect2:错误:lldvolvióelestado de salida 1
Makefile:540:目标'bash.exe'的配方失败
make:*** [bash.exe]错误1
更新2
CygWin支持的答案:
Bash 4.2 仍在使用旧的和已弃用的旧的cygwin_conv_to_full_posix_path函数。它应该已经更改了使用cygwin_conv_path或cygwin_create_path函数的调用。
最终更新
我可以在cygwin 32版本上使用它,但在64版本上没有。解决了
make
,gcc
也可能是readline
包裹(也许是其他一些包装?!)。