2014-09-30 102 views
1

我有一個使用cygwin作爲env構建的項目。這個週末,我試圖做一個標準的git pull,一個曾經工作過幾百次的,我得到這個消息。cygssp-0.dll錯誤git/cygwin

fatal: Could not read from remote repository. 

Please make sure you have the correct access rights 
and the repository exists. 
/usr/bin/ssh.exe: error while loading shared libraries: cygssp-0.dll: cannot open shared object file: No such file or directory 

我有點困惑,因爲這從來沒有發生過。我搜索了「cygssp-0.dll」,發現它是一些.dll文件,具體我看了here

我嘗試的第一個選項,並得到了這一步

enter "regsvr32 /u cygssp-0.dll" in the command line 

和我得到的消息

The module "cygssp-0.dll" failed to load. 

Make sure the binary is stored at the specific path or debug it to check for problems with the binary or dependent .DLL files. 

The specific module could not be found. 

在這一點上,我徹底糊塗了,不是太熱衷於啓動重新安裝窗戶。我試過重新安裝cygwin ..有沒有人有什麼想法做什麼?

編輯:我已經嘗試多次運行setup-x86_64.exe,試圖從cygwin一側重新安裝一些東西。

回答

1

將您的防毒軟件關閉靜默模式或關閉啓發式掃描。它只是在不告訴你的情況下刪除文件。 libssp被刪除,因爲它是一個安全庫,可以對防病毒程序不喜歡的調用堆棧執行操作。 (具體來說,它增加了插入堆棧中的金絲雀和隨機值,以防止某些緩衝區溢出攻擊。但是,未編碼以處理堆棧金絲雀插入的防病毒將本身視爲緩衝區溢出攻擊。)

+0

還是有點糊塗..什麼在這種情況下,是嗎」?我的防病毒軟件刪除了安全庫? – Zack 2014-09-30 15:36:04

0

今天在嘗試通過ssh通過Cygwin的git進行推送時遇到同樣的問題。

解決方案是重新安裝或更新Cygwin,因爲缺少的庫將被重新下載並放置在適當的位置。請確保您的防病毒軟件不會再次刪除它,因此請禁用所有可能會將其刪除的內容和/或白名單cygssp-0.dll位置。截至今天他們位於:

  • cygwin_root\bin\cygssp-0.dll
  • cygwin_root\usr\i686-pc-cygwin\sys-root\usr\bin\cygssp-0.dll

(第二通道只對Cygwin的64位分佈)