Cygwin の git が壊れているようで、次のコマンドを実行し/usr/bin/git.exe --version
ても/usr/bin/git.exe
何も起こりません。Windowsgit.exe
ターミナルから特定のディレクトリで発行すると、次のメッセージが表示されます:コマンドThe procedure entry point __cxa_atexit could not be located in the dynamic link library cygwin1.dll
を使用して次のパッケージをインストールしましたapt-cyg
:
git
git-completion
git-cvs
git-debuginfo
git-email
git-gui
git-oodiff
git-review
git-svn
gitk
gitweb
バイナリがインストールされているようです:
$ which git.exe
/usr/bin/git.exe
$ ls -l /usr/bin/git.exe
-rwxr-xr-x+ 112 wakatana Domain Users 1636893 Jan 10 2015 /usr/bin/git.exe
$ md5sum.exe /usr/bin/git.exe
85f986f8c9ee8d9573fd9b1a05af4260 */usr/bin/git.exe
上記以外の git 用のバイナリやサードパーティ ツールはインストールしていません。何が問題なのでしょうか?
PS: 私はこれを非管理者ユーザーとして実行しています (管理者アカウントは使用できません)。
答え1
表示されたエラーから判断すると、 のバージョンは、git
異なるapt-cyg
(おそらく新しい) バージョンの Cygwin にリンクされています。表示されたエラー メッセージは、DLL cygwin1
(Cygwin の中心コンポーネントであり、すべての Unix API を提供します) に関数が欠落していることを示しています。これは、おそらく、その関数が、お持ちのバージョンがコンパイルされた後にライブラリに追加されたためです。
プログラムまたはDLLが(他の)DLL(いわゆる)から必要とする関数を確認することができます。輸入)とDLLが他のコードに提供する(と呼ばれる)呼び出し元。輸出)は様々な方法で利用できますが、最も良い方法の1つは依存関係ウォーカーは、Windows のどのバージョンでも実行できる無料のユーティリティであり、非常に便利なため、Microsoft では以前のバージョンのビルド ツールにこれを組み込んでいます。
解決策はおそらくCygwinのインストールを更新する関連するエクスポートが追加されたようですシグウィン1.7.32-1、2014年8月にリリースされました。こちらの投稿をご覧ください:http://cygwin.1069669.n5.nabble.com/ANNOUNCEMENT-Updated-Cygwin-1-7-32-1-td110464.htmlもちろん、利用可能な最新のリリースバージョンを使用する必要があります。