jac*_*cus 14 cygwin stdout stderr windows-7
我试图在我的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
Run Code Online (Sandbox Code Playgroud)
我在跑步:
$ 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
Run Code Online (Sandbox Code Playgroud)
Cygwin安装选择了DOS行结束选项(对于某些遗留代码兼容性).
修复行结尾的另一个问题(bash有麻烦处理/ cygdrive/c/cygwin-legacy/bin/vmake脚本,如此处描述的问题:http://chess.eecs.berkeley.edu/softdevel/faq/5.html )我已将这些添加到〜/ .bash_profile:
export SHELLOPTS
set -o igncr
Run Code Online (Sandbox Code Playgroud)
在阅读http://lists-archives.com/cygwin/50369-run-requires-cygwin-tty.html之后,我还设置了:
$ CYGWIN=tty
Run Code Online (Sandbox Code Playgroud)
这没有改变.我还在
1 [main] make 7060 dtable::stdio_init: couldn't make stderr distinct from stdout
Run Code Online (Sandbox Code Playgroud)
每次都有不同的4位数字.
小智 11
我在这里遇到了同样的问题.然后我记得,我们更换了由MSYS版"make"命令(因为新的Cygwin包的"使"没有用冒号(处理任何pathes":") - >这导致"多目标"的错误.
替换'make'命令解决了这个问题,但是在我尝试编译其他项目时导致"stdio_init:无法使stderr与stdout不同".
因此:
你的机器上也安装了MSYS/MinGW吗?
试试这个:
make --version
它应该看起来像:
GNU Make 3.82.90
Built for i686-pc-cygwin
Run Code Online (Sandbox Code Playgroud)
如果你得到类似的东西:
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
Run Code Online (Sandbox Code Playgroud)
你需要使用cygwin'make'代替.
如果混淆不同cygwin版本的组件,可能会发生此错误...
对于像ssh这样的其他二进制文件有这个问题的人的一点注意事项.我有这个错误,因为cygwin试图运行Windows ssh客户端而不是cygwin中的版本
| 归档时间: |
|
| 查看次数: |
11088 次 |
| 最近记录: |