我最近在我的计算机上重新安装了Cygwin,以便访问我缺少的几个命令行元素.我以前从未遇到过Cygwin的困难,但在重新安装之后,在(几乎)每个命令输入之后会继续出现错误消息.例如:
-bash-4.1$ wc m1.txt
3 [main] bash 2216 child_info_fork::abort: data segment start: parent(0x26D000) != child(0x38D000)
-bash: fork: retry: Resource temporarily unavailable
2013930 4027950 74968256 m1.txt
Run Code Online (Sandbox Code Playgroud)
通常,命令仍然运行(如上所示),但并非总是如此.偶尔,"错误"消息连续出现几次(初始数字"3"将变为"4"或"2",特别是如果我启动第二个Cygwin窗口.
另外,一旦我启动Cygwin,我会在提示之前收到以下消息:
3 [main] bash 6140 child_info_fork::abort: data segment start: parent(0x26D000) != child(0x36D000)
-bash: fork: retry: Resource temporarily unavailable
-bash: fork: Resource temporarily unavailable
-bash-4.1$
Run Code Online (Sandbox Code Playgroud)
目前,我正在讨论是否要再次卸载/重新安装Cygwin,或者只是接收错误消息,但我很好奇是否可能存在我不知道的问题.
Cod*_*y S 118
(假设Cygwin安装在C:\ Cygwin):
$/usr/bin/rebaseall -v,按Enter键,然后等待该过程完成.
cd /usr/bin && ./rebaseall -v.这个过程对我有用.我希望它也适合你们.
资料来源:http://cygwin.wikia.com/wiki/Rebaseall
Mic*_*eal 13
I would like to add the following to the above answers, as it is what I had to do after reinstalling Cygwin:
Navigate to the "/usr/bin" directory (usually, C:\cygwin\bin) and right click, Run as Administrator the file: dash.exe Then, at the $ prompt type the following, hitting enter after each line:
cd /usr/bin/
/usr/bin/peflags * -d 1
/usr/bin/rebaseall -v
Run Code Online (Sandbox Code Playgroud)
What it does is, it marks the dll's as "rebase-able," and then rebases them. You have to have peflags.exe in addition to the above files (in previous answers). You may have to restart windows after doing this and you will definitely need to make sure that there are no processes nor services belonging to cygwin running. (Use task manager, kill any related processes, and then under the services tab look for any service starting with CYG and stop it.)
执行此操作后,我能够运行cygwin而没有任何关于dll被加载到错误地址的错误,即fork错误等.
我希望这有助于其他人,因为这很难找到.
SOURCE: http://www.cygwin.com/faq.html#faq.using.fixing-fork-failures
and the rebase README file.
Run Code Online (Sandbox Code Playgroud)
小智 5
为了在这里添加其他答案,我们遇到了同样的问题,但无法从ash或dash shell运行rebase命令.但是,从Windows cmd shell启动命令时,以下工作正常.
cmd /c "C:\cygwin64\bin\ash.exe /usr/rebaseall -v"
Run Code Online (Sandbox Code Playgroud)
-v是获得详细输出
| 归档时间: |
|
| 查看次数: |
63529 次 |
| 最近记录: |