2017-03-04 82 views
0

解決:請參見下面https://stackoverflow.com/a/42611525/4543664Cygwin64更新後 - bash.exe - 入口點未找到「history_lines_read_from_file」

我跑了cygwin64 2.877安裝更新安裝,並有bash的一個新版本,這是matzeri的答案上市升級。

安裝失敗,出現以下錯誤信息: The procedure entry point history_lines_read_from_file could not be located in the dynamic link library C:\cygwin64\bin\bash.exe

安裝後setup.log.full顯示這些錯誤:

Rebasing with list /var/cache/rebase/rebase_all, built from /var/cache/rebase/rebase_lst /var/cache/rebase/rebase_dyn /var/cache/rebase/rebase_user. 2017/03/02 22:45:16 running: C:\cygwin64\bin\dash.exe "/etc/postinstall/0p_texlive_prep.dash" 2017/03/02 22:45:16 running: C:\cygwin64\bin\dash.exe "/etc/postinstall/0p_update-info-dir.dash" 2017/03/02 22:45:18 running: C:\cygwin64\bin\bash.exe --norc --noprofile "/etc/postinstall/bash.sh" 2017/03/02 22:46:20 abnormal exit: exit code=-1073741511 2017/03/02 22:46:21 running: C:\cygwin64\bin\bash.exe --norc --noprofile "/etc/postinstall/bashdb.sh" 2017/03/02 22:46:23 abnormal exit: exit code=-1073741511 2017/03/02 22:46:23 running: C:\cygwin64\bin\bash.exe --norc --noprofile "/etc/postinstall/ca-certificates.sh" 2017/03/02 22:46:25 abnormal exit: exit code=-1073741511

mintty快捷閃爍打開窗戶,幾乎立即下降。

有關如何解決此問題的任何想法?在贏運行cygcheck命令提示符作爲管理員後

更新: `Microsoft Windows [Version 10.0.14393] (c) 2016 Microsoft Corporation. All rights reserved.

C:\WINDOWS\system32>cygcheck /usr/bin/bash.exe C:\cygwin64\bin\bash.exe C:\cygwin64\bin\cygwin1.dll C:\WINDOWS\system32\KERNEL32.dll C:\WINDOWS\system32\ntdll.dll C:\WINDOWS\system32\KERNELBASE.dll C:\WINDOWS\system32\api-ms-win-core-fibers-l2-1-1.dll C:\cygwin64\bin\cygiconv-2.dll C:\cygwin64\bin\cygintl-8.dll C:\cygwin64\bin\cygreadline7.dll C:\cygwin64\bin\cygncursesw-10.dll C:\WINDOWS\system32\USER32.dll C:\WINDOWS\system32\win32u.dll C:\WINDOWS\system32\GDI32.dll

C:\WINDOWS\system32>`

+0

可能有一個庫沒有正確更新。重新安裝cygwin包和bash依賴的任何庫。使用'cygcheck/usr/bin/bash.exe'來找到它們。 – matzeri

+0

當通過sh或bash處理任何腳本時,安裝會遇到錯誤,並且我嘗試了幾次「重新安裝bash」,所有這些錯誤都在日誌中出現。由於我的農村帶寬低,我試圖避免清除。在一個愉快的一天100kbs。 –

回答

1

history_lines_read_from_file屬於文件cygreadline7.dll 屬於包裝libreadline7

$ cygcheck -f /usr/bin/cygreadline7.dll 
libreadline7-7.0.3-3 

所以,你需要重新安裝libreadline7

+0

你是怎麼確定錯誤信息與cygreadline7.dll有關的? 完美運作。按照您的建議重新安裝libreadline7,現在調用終端的快捷方式再次讓我直接進入bash提示符。非常感謝! –

+0

Bash依賴於以下之一:cygwin1.dll,cygiconv-2.dll,cygintl-8.dll,cygreadline7.dll,cygncursesw-10.dll,cyggcc_s-1.dll 'history_lines_read_from_file' name已指向'readline'並且谷歌確認它:https://fossies.org/dox/readline-7.0/histfile_8c.html#func-members – matzeri

相關問題