当我尝试从Windows 7(64位)上的git Bash运行某些命令(例如git push)时,我收到错误:
The program can't start because libiconv2.dll is missing from your computer
我已经详尽地搜索了解决方案。
我能找到的最多是谷歌代码网站(Issue 419)和其他一些博客的问题主题。据我所知,帖子中提供的任何建议都不能解决我的问题。
我尝试过重新安装。我尝试将$GIT/bin
添加到PATH
我可以验证dll是否在$GIT/bin
目录中......但仍然无法推送到远程。
我在另一个Windows 7机器上安装了msysgit,我在两种情况下都安装了相同的方式......所以不用说我很困惑。
对此的任何帮助都将非常感激。
谢谢,
答案 0 :(得分:104)
从这个帖子中解决:http://groups.google.com/forum/#!topic/msysgit/twrVn_EbNI4
cd
进入您的git安装目录copy mingw\bin\libiconv-2.dll libexec\git-core
copy bin\libiconv-2.dll libexec\git-core
如果您的安装没有mingw
文件夹)在链接的帖子中,Drew请求帮助,因此如果您认为可以帮助解决问题,则可能需要回复该Google网上论坛帖子。
这些版本出现错误:
答案 1 :(得分:41)
答案 2 :(得分:15)
我已经解决了这个问题......这里有几点需要注意。
1)问题是我在本地.git / config文件中配置的来源中的拼写错误...所以我是个白痴。
2)Git Bash在这种情况下不会优雅地失败,然后将这个非常误导的错误作为警报抛出,而不是报告.git / config文件中没有指定名称的配置来源。
我能够解决这个问题的唯一方法是添加$ GitPath / cmd目录 到我的路径并从命令行运行git。在那里,我能够得到一个详细的错误消息,表明远程存储库尚不存在。然后我拉起了可靠的vi编辑器,看到实际上有一个错字。
这里的教训。如果你在使用msysgit时遇到奇怪的.dll错误,很可能是错误配置的结果......而不是某些系统异常或安装问题。
感谢所有试图帮助解决这个问题的人!
答案 3 :(得分:14)
我在Win 7上看到了msysGit-fullinstall-1.7.3.1-preview20101002.exe的错误。
Added <msysgit_dir>\mingw\bin to PATH
修复它。 在该目录中找到了libiconv2.dll。
答案 4 :(得分:9)
在Mac上的SmartGit中出现此问题。 通过改变来修复它 偏好设置 - &gt;命令 - &gt;可执行强>
Git可执行文件:
这
/usr/bin/git
为:
/usr/local/git/bin/git
答案 5 :(得分:3)
由于SmartGit在错误结果中引用了stackoverflow的这一页,我认为这些知识可能对这里的某些人有用....
有时虽然git安装没有问题。即使您可以使用git bash并通过键入
获取版本信息git -- version
SmartGit不添加存储库并返回git is obsolote或无法获取版本信息(或类似于此消息)...
如果是这样,您最好先检查安全实用程序和病毒清除应用程序设置。在我的情况下,禁用comodo防火墙使smartgit能够看到健康的git安装和版本信息。
答案 6 :(得分:3)
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
答案 7 :(得分:2)
要解决此问题,我实际上必须将所有DLL从mingw/bin/
复制到bin/
(不会覆盖任何现有的一次)。我使用远程HTTPs存储库,它只是继续抱怨。
答案 8 :(得分:2)
我刚尝试在Windows上安装SmartGIT并面临同样的问题。我只是弄清楚它的工作原理不是通过将其指向git.exe,而是将其指向C:\ msysgit \ cmd \ git.cmd。到目前为止,它的工作正常。我可以访问msysgit下的git存储库。
仅供参考,我正在使用Windows的Net安装程序。
希望这是正确的方法。
答案 9 :(得分:2)
我的回答解决了msysgit的相同错误,但可能对纯git有帮助。
在Windows 7上,我将<msysgit_dir>\mingw\bin
添加到PATH
as so_mv has recommended above(通过系统变量GUI),但我必须注销并在此之后登录操作系统,否则PATH
值不会更新。
答案 10 :(得分:2)
解决此问题的最快方法是将* .dll文件放在另一台PC上并复制它=)
答案 11 :(得分:1)
Personally I solved it by reading the error I got from getopt.exe, that told me it was missing "libiconv2.dll".. I had libiconv-2.dll (notice the dash "-") in C:\Program Files (x86)\Git\bin. Making a copy and naming it libiconv2.dll did the trick for me...
I used some chocolatey packages ... maybe the actual file was renamed during its development lifetime... and the dependencies in the packages did not....
Well hope it helps someone out there :)
答案 12 :(得分:1)
SourceTree的一种可能解决方案:
1.Open the "Option" window.
2.Select "Git".
3.Than "Use System Git".
4.And press OK button.
答案 13 :(得分:1)
我安装了Git for Windows,然后是Git以便复制.dll
这对我不起作用。要解决这个问题,我必须添加路径:
C:\Users\*username*\AppData\Local\GitHub\PortableGit_015aa71ef18c047ce8509ffb2f9e4bb0e3e73f13\cmd
到PATH
环境变量。
这解决了问题,我现在可以从命令提示符访问git。
答案 14 :(得分:1)
运行\ msysgit \ bin \ git.exe时,我在Windows 7上遇到了同样的错误。 我通过将\ msysgit \ mingw \ bin \ libiconv-2.dll复制到Win 7安装目录的根目录来修复它。
答案 15 :(得分:1)
如果在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
答案 16 :(得分:0)
我一直困扰着这个问题,为了纠正这个问题,我卸载了tortoisegit和msysgit,然后重新安装了“Git-1.8.1.2-preview20130201”。
通过这样做,这纠正了我的问题,我无法使用poshgit。答案 17 :(得分:0)
复制所有.dll:
C:\ Users \用户YOURUSERNAME \应用程序数据\本地\ GitHub的\ PortableGit_25d850739bc178b2eb13c3e2a9faafea2f9143c0 \的mingw32 \ BIN
为:
C:\ Users \用户YOURUSERNAME \应用程序数据\本地\ GitHub的\ PortableGit_25d850739bc178b2eb13c3e2a9faafea2f9143c0 \的mingw32 \的libexec \ git的核
答案 18 :(得分:0)
我遇到了同样的问题,我使用的是Windows 10,解决这个问题非常容易。
从以下网址下载dll文件:
https://www.dll-files.com/libiconv-2.dll.html
将其解压缩或直接粘贴到mingw文件夹中,如果使用默认选项安装它,通常在C驱动器中。希望它有所帮助。
答案 19 :(得分:0)
尝试以下命令:
sudo rm -rf /Library/Developer/CommandLineTools
并安装开发人员工具
答案 20 :(得分:0)
我正在使用GitHub桌面版并遇到同样的问题,我通过设置更改了默认shell - &gt;选项---&gt;默认shell并检查了Git bash。我开始&#34;打开Git shell&#34;并运行&#34; git pull&#34;命令,它解决了问题。它适用于我的情况。
答案 21 :(得分:0)
在我的情况下,我使用chocolatey(chocolatey.org)来安装git。
我必须将libconv-2.dll
复制到C:\ProgramData\chocolatey\bin
才能使其正常运行。我不确定是否也必须将文件复制到C:\Program Files (x86)\Git\libexec\git-core
,就像我先做的那样。
答案 22 :(得分:0)
我最初试图通过复制这里提到的dll来解决这个问题,但很快就遇到了其他问题。对我来说,真正的解决方案是在我的.bashrc文件中为msys设置路径,以优先处理msys二进制文件。
在〜/ .bashrc中打开msys shell和以下行:
export PATH = / usr / local / bin:/ mingw / bin:/ bin:$ PATH
答案 23 :(得分:0)
我在Windows7上有msysgit,没有任何DLL问题。
我在bin目录中有libiconv2.dll:C:\Path\To\Git\1.7.1\bin
issue 419是关于安装“开发环境来编译Git for Windows”的人,而不仅仅是Git。 请参阅此SO answer for the difference between the two。
你安装了哪一个?
Git-1.x.x.x...
? (如'Git-1.7.0.2-preview20100309.exe
'),msysGit-netinstall-1.x.x...
? (如'msysGit-netinstall-1.7.1-preview20100612.exe
')。答案 24 :(得分:-1)
我在尝试配置meanio时必须处理同样的错误消息,其中git是先决条件(我的特殊错误是:找不到先决条件:git)。
我发现的修复需要从
C:\Program Files (x86)\Git\bin
到
C:\Program Files (x86)\Git\libexec\git-core
然后我不得不对windows系统环境变量进行一些调整(右键单击计算机,转到属性,单击左侧垂直条上的“高级系统设置”,选择环境变量) 进入环境变量后,查看“系统变量”框。找到
PATH
变量并添加三个新引用:
C:\Program Files (x86)\Git\bin;
C:\Program Files (x86)\Git\cmd;
C:\Program Files (x86)\Git\libexec\git-core
这样,所有必需的git文件都可以通过系统路径访问。
希望这有帮助!