Git for Windows – 由于libiconv2.dll丢失,程序无法启动

当我尝试从Windows 7(64位)上的git Bash运行某些命令(例如git push)时,出现错误:

The program can't start because libiconv2.dll is missing from your computer 

我已经彻底地寻找解决办法。
我能find的最多的是Google代码网站( 问题419 )和其他一些博客的问题。 据我所知,这些post中提供的build议实际上并不能解决我的问题。

我试过重新安装。 我曾尝试将$GIT/bin添加到PATH
我可以validation该DLL在$GIT/bin目录中…但仍然无法推送到远程。

我在另一个Windows 7上安装了msysgit,在这两种情况下我都是用同样的方法安装的……所以不用说我很困惑。

任何帮助,将不胜感激。

谢谢,

从这个线程解决: http : //groups.google.com/forum/#!topic/msysgit/twrVn_EbNI4

  • 进入你的git安装目录
  • copy mingw\bin\libiconv-2.dll libexec\git-core
    (或者如果您的安装没有mingw文件夹,请copy bin\libiconv-2.dll libexec\git-core

在链接线程德鲁要求协助,所以如果你认为你可以帮助解决这个问题,你可能要回复在Google网上论坛线程。

这些版本发生错误:

  • msysgit-fullinstall-1.7.4或1.7.6(和1.7.7)
  • msysgit-netinstall-1.7.4或1.7.6(和1.7.7)
  • Git对于Windows 1.7.6(但不是 1.7.4)
  • 复制/ Program Files / Git / bin / libiconv-2.dll
  • 到/ Program Files / Git / libexec / git-core /

我已经解决了这个问题…这里有几件事要注意。

1)问题是在我的本地.git / config文件中configuration的来源错字…所以我是一个白痴。

2)在这种情况下,Git Bash不会失败,然后将这个非常具有误导性的错误作为警报发送,而不是报告.git / config文件中指定的名称没有configuration的来源。

唯一能够解决这个问题的方法是将$ GitPath / cmd目录添加到我的path中,然后从命令行运行git。 在那里,我能够得到一个详细的错误消息,指出远程存储库尚不存在。 然后,我拉起了可靠的vi编辑,发现其实是一个错字。

这里的教训。 如果你使用msysgit得到一个奇怪的.dll错误,很可能是错误configuration的结果…而不是一些系统exception或安装问题。

感谢所有试图帮助的人!

我在Win 7上看到了msysGit-fullinstall-1.7.3.1-preview20101002.exe的这个错误。

 Added <msysgit_dir>\mingw\bin to PATH 

修理它。 在该目录中findlibiconv2.dll。

sqzaman的答案的变化,因为我没有在同一个地方他们做的文件夹:

 Copy %USERPROFILE%\Local Settings\Application Data\GitHub\PortableGit_*\bin\*.dll to %USERPROFILE%\Local Settings\Application Data\GitHub\PortableGit_*\libexec\git-core 

请注意,我开始通过复制libiconv-2.dll,但后来抱怨libcurl.dll,所以我继续前进,复制* .dll

在Mac上有SmartGit这个问题。 通过更改首选项 – >命令 – >可执行文件来修复它

Git可执行文件:

 /usr/bin/git 

至:

 /usr/local/git/bin/git 

最快的方法来解决这个问题是find* .dll文件在其他电脑上,并复制=)

我只是尝试在Windows上安装SmartGIT,并面临同样的问题。 我只是想通过它指向git.exe,而不是指向它C:\ msysgit \ cmd \ git.cmd。 到目前为止,它工作得很好。 我可以访问msysgit下的git仓库。

仅供参考,我正在使用Windows的Net安装程序。

希望这是正确的做法。

为了解决这个问题,我实际上必须将所有DLL从mingw/bin/复制到bin/ (不覆盖任何现有的)。 我使用远程HTTPs存储库,它只是抱怨。

由于SmartGit引用错误结果中的这个页面的stackoverflow我认为这个知识可能是有用的这里的人….

有时候,虽然git安装没有问题。 即使你可以使用git bash并通过键入来获取版本信息

 git -- version 

SmartGit不添加存储库,并返回git是obsolote或版本信息是无法获取(或类似于此消息)…

如果是这样,你最好先检查你的安全工具和病毒清除应用程序的设置。 在我的情况禁用comodo防火墙使smartgit能够看到healty git安装和版本信息。

我在Windows7 msysgit没有任何问题与任何DLL。

我有bin目录中的libiconv2.dll: C:\Path\To\Git\1.7.1\bin

问题419是关于安装“开发环境来编译Git for Windows”的人,而不仅仅是Git。
看到这个答案为两者之间的差异 。

那么你安装了哪一个?

  • Git-1.xxx.. ? (如' Git-1.7.0.2-preview20100309.exe '),
  • 或者msysGit-netinstall-1.xx.. ? (如“ msysGit-netinstall-1.7.1-preview20100612.exe ”)。

我的答案解决了msysgit相同的错误,但可能有助于纯粹的git。

在Windows 7中,我添加了<msysgit_dir>\mingw\bin 作为so_mv上面推荐的 (通过系统variablesGUI),但是之后我必须注销并login到OS ,否则PATH值不会被更新。

运行\ msysgit \ bin \ git.exe时,我在Windows 7上遇到了同样的错误。 我通过将\ msysgit \ mingw \ bin \ libiconv-2.dll复制到Win 7安装目录的根目录来修复它。

我安装了Git for Windows,然后Git才能复制.dll

这不适合我。 要解决这个问题,我不得不添加path:

C:\Users\*username*\AppData\Local\GitHub\PortableGit_015aa71ef18c047ce8509ffb2f9e4bb0e3e73f13\cmd

PATH环境variables。

这解决了这个问题,我现在可以从命令提示符访问git。

我个人通过阅读我从getopt.exe得到的错误,告诉我它缺less“libiconv2.dll”..我有libiconv-2.dll(注意破折号“ – ”)在C:\ Program Files文件86)\的Git \ bin中。 复制并命名它libiconv2.dll做了我的伎俩…

我用了一些巧克力包…也许实际的文件在其开发生命周期中被重新命名…并且包中的依赖关系没有….

那么希望它可以帮助别人:)

如果在Windows上启动SourceTree时发生错误“丢失libiconv-2.dll”,下面为我工作(Win 8.1):

 C:\Users\$USERNAME$\AppData\Local\Atlassian\SourceTree\git_local\bin 

复制

 libcrypto.dll libcurl.dll libiconv-2.dll libssl.dll 

 C:\Users\$USERNAME$\AppData\Local\Atlassian\SourceTree\git_local\libexec\git-core 

SourceTree的一个可能的解决scheme:

  1.Open the "Option" window. 2.Select "Git". 3.Than "Use System Git". 4.And press OK button. 

我原本试图通过复制这里提到的DLL来解决这个问题,但很快遇到了其他问题。 对我来说,真正的解决scheme是在msys的.bashrc文件中设置path,以优先考虑msys二进制文件。

在〜/ .bashrc中打开msys shell和以下行:

export PATH = / usr / local / bin:/ mingw / bin:/ bin:$ PATH

我一直在困扰这个问题,为了纠正这个问题,我卸载了tortoisegit和msysgit,然后我重新安装了“Git-1.8.1.2-preview20130201”。

通过这样做,这纠正了我的问题,我不能使用poshgit。

在我的情况下,我用巧克力(chocolatey.org)来安装git。

我必须将libconv-2.dll复制到C:\ProgramData\chocolatey\bin才能正常工作。 我不确定是否将文件复制到C:\Program Files (x86)\Git\libexec\git-core也是必需的,就像我之前做的那样。

我正在使用GitHub桌面版本,并有相同的问题,我改变了默认shell通过设置 – >选项—>默认shell和检查Git bash。 我开始“打开Git shell”并运行“git pull”命令,它修复了问题。 它在我的情况下工作。

复制所有.dll文件:

C:\ Users \用户YOURUSERNAME \应用程序数据\本地\ GitHub的\ PortableGit_25d850739bc178b2eb13c3e2a9faafea2f9143c0 \ mingw32的\ BIN

至:

C:\ Users \用户YOURUSERNAME \应用程序数据\本地\ GitHub的\ PortableGit_25d850739bc178b2eb13c3e2a9faafea2f9143c0 \ mingw32的\的libexec \ Git的核心

我有同样的问题,我正在使用Windows 10,这是非常容易解决这个问题。

从以下位置下载dll文件:

https://www.dll-files.com/libiconv-2.dll.html

将其解压缩或直接粘贴到mingw文件夹中,如果使用默认选项安装,则通常在C盘中。 希望能帮助到你。

尝试以下命令:

 sudo rm -rf /Library/Developer/CommandLineTools 

并安装开发人员工具

我不得不处理相同的错误消息,而尝试configurationmean,其中git是一个先决条件(我特别的错误是:先决条件没有find:git)。
我想通过修复libiconv2.dll的修复

 C:\Program Files (x86)\Git\bin 

 C:\Program Files (x86)\Git\libexec\git-core 

然后,我必须对Windows系统环境variables进行一些调整(右键单击计算机,转到属性,单击左侧竖栏上的“高级系统设置”,select环境variables)一旦进入环境variables,请查看“系统variables”框。 找出

 PATH 

variables并添加三个新的引用:

 C:\Program Files (x86)\Git\bin; C:\Program Files (x86)\Git\cmd; C:\Program Files (x86)\Git\libexec\git-core 

这样,所有必需的git文件都可以通过系统path访问。

希望这可以帮助!