libgit2 / libgit2/libgit2sharp

NativeMethods. Version GLIBC_2.25' not found

オープン
#2,123 コメント 3 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

主要言語
C#
スター
3.5k
フォーク
925
PR マージ指標
30日以内にマージされた PR はありません

説明

Hi!

I test my LibGit2Sharp application on old Linux platform and stuck with error, after some research i execute ldd command inside terminal:

ldd libgit2-a418d9d.so

Output:
version GLIBC_2.25' not found (required by /usr/lib/versioncontrol/libgit2-a418d9d.so)

It seems that this is the real cause of the load DLL error.

How can I embed this dependency directly into the application so that it doesn't try to look for it in the system?
Currently, GLIBC_2.24 is installed on the machine. Updating GLIBC to a newer version, like 2.25, is not possible due to company policies.

Reproduction steps

Start application and execute "pull" command through LibGit2Sharp.

Expected behavior

Execute of "pull" command successfully finished.

Actual behavior

Error on application "Pull" command:
The type initializer for 'LibGit2Sharp.Core.NativeMethods' threw an exception.
InnerException = {"Unable to load DLL 'git2-a418d9d' or one of its dependencies: }

Version of LibGit2Sharp (release number or SHA1)

0.30.0

Operating system(s) tested; .NET runtime tested

Astra Linux 1.6

Screenshot 2024-08-28 at 2 39 41 PM

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

まず、Astra Linux 1.6 上で LibGit2Sharp 0.30.0 を使用した pull コマンドの失敗を再現し、次に libgit2-a418d9d.so の ldd 出力と NativeMethods の型初期化子例外を調べます。GLIBC_2.25 依存関係をアプリケーション内で解決できるかどうかを判断します。GLIBC_2.24 のシステム上で DLL の読み込みエラーなしに pull コマンドが完了すれば完了とします。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
csharp
領域
operating-systems
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。