我正在尝试在Windows 7 x64操作系统上设置一些旧版本的Cygwin。到现在为止还挺好。现在我陷入了srdout / stderr区分问题:
$ vmake
1 [main] make 7060 dtable::stdio_init: couldn't make stderr distinct from stdout
$ ls /
1 [main] ls 8180 dtable::stdio_init: couldn't make stderr distinct from stdout
Cygwin.bat Cygwin.ico bin cygdrive etc lib proc setup.log setup.log.full tmp usr var
我正在跑步:
$ uname -srv
1 [main] uname 5876 dtable::stdio_init: couldn't make stderr distinct from stdout
CYGWIN_NT-6.1-WOW64 1.5.25(0.156/4/2) 2008-06-12 19:34
Cygwin安装选择了DOS line-endings选项(对于某些遗留代码兼容性)。
修复行结尾的另一个问题(bash遇到麻烦处理/ cygdrive / c / cygwin-legacy / bin / vmake脚本,如此处所述的问题:http://chess.eecs.berkeley.edu/softdevel/faq/5.html)我已将这些问题添加到〜/ .bash_profile :
export SHELLOPTS
set -o igncr
阅读http://lists-archives.com/cygwin/50369-run-requires-cygwin-tty.html后,我也设置了:
$ CYGWIN=tty
这没有改变。我还在接受
1 [main] make 7060 dtable::stdio_init: couldn't make stderr distinct from stdout
每次都有不同的4位数字。
答案 0 :(得分:11)
我在这里遇到了同样的问题。 然后我记得,我们取代了“make”命令 一个MSYS版本(因为新的'make') cygwin包没有用冒号处理任何pathes(“:”) - >这会导致“多个目标”错误。
替换'make'命令解决了这个问题, 但导致“stdio_init:无法使stderr与stdout不同” 当我试图编译其他项目时。
因此:
您的机器上是否安装了MSYS / MinGW?
试试这个:
make --version
应该看起来像:
GNU Make 3.82.90
Built for i686-pc-cygwin
如果您得到类似的内容:
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
This program built for i686-pc-msys
你需要使用cygwin'make'。
如果混淆不同cygwin版本的组件,可能会发生此错误......
答案 1 :(得分:6)
对于像ssh这样的其他二进制文件有此问题的人的一点注意事项。我有这个错误,因为cygwin试图运行Windows ssh客户端而不是cygwin中的版本
答案 2 :(得分:1)
尝试从cygwin中启动Msys可执行文件时出现此错误。 Msys是Windows上的另一个Linux'环境与cygwin不相容。
具体来说,我试图通过/ bin路径中的符号链接启动Git for Windows。我显然已经在很久以前安装了它并创建了符号链接,并且在我尝试使用git gui
然后抛出couldn't make stderr distinct from stdout
错误之前没有注意到任何问题。有趣的是,许多git命令可以工作,或者无声地失败,因此它不会立即显示出来。
当cygwin尝试启动针对Msys环境的程序时,它会抛出错误。
要解决此问题,请下载问题应用的cygwin版本,并删除指向Windows版本的所有符号链接。
对于Git案例:
答案 3 :(得分:0)
This帮助了我:
尝试使用Cygwin 1.7 beta测试版:
Windows 7不支持Cygwin 1.5.25。只有Cygwin 1.7 接受测试。
答案 4 :(得分:0)
从我的路径中删除C:\ DevKit \ bin使我的问题消失了。