1. ホーム
  2. c++

[解決済み】libstdc++-6.dllが見つからない。

2022-01-29 10:37:44

質問

あるプロジェクト(具体的にはゲーム)を進めていて、別のライブラリでやり直した方がいいような気がしています。そこで、その際に再インストールしたのが コード::ブロック で、新しいライブラリとインクルードをセットアップします。

しかし、今現在、私は、すべてのincludeが動作するかどうかをテストするために、u[ 私の新しいプロジェクトを開始する問題を抱えている。この問題は、以下の通りです。 libstdc++-6.dll was not found. 最初はこのファイルをネットで探せばいいのかと思いましたが、どこにもありません(少なくとも私が検索した多くの場所では...)すぐに、古いプロジェクトをロードしてみましたが、同じ問題が再び起こりました(奇妙ですね...。この時点で、私はこの問題を明日(今日ですが)に持ち越しました。

そこで質問ですが、もし他にこのような問題を抱えている人がいたら、どのように解決しますか?

Windows Vista 32bitでCode::BlocksとMinGWをコンパイラとして使用しています。

*****EDIT

以下は、私のプロジェクトでのBuildオプションです。これらはプロジェクトでの設定であり、グローバルなコンパイラではないことに注意してください。

(プロジェクト名)->コンパイラの設定->Otehrのオプションで。

(私は // でコマンドを区切る)

-mthreads//
-fmessage-length=0//
-fexceptions//
-fident//

(プロジェクト名)->コンパイラの設定->#defineにあります。

WIN32//
_WINDOWS//

(プロジェクト名)->リンカー設定->その他のリンカーオプションにあります。

-static-libstdc++//
-static-libgcc//
-Wl,--enable-auto-image-base//
-Wl,--add-stdcall-alias//
-Wl,--enable-auto-import//

リンカ->リンクライブラリの中に、様々なファイルへのリンクがあります。 .a これらのファイルには、Bullet PHysics、Ogre3D、SFML が含まれます。

検索ディレクトリには、MinGW/binとMinGW/libディレクトリへのリンクがあり、その他にも様々なライブラリへのリンクがあります。

私のコンパイラはMinGWで、Windows 32bit用のGNU GCCコンパイラです。また、プロジェクトのDebugとReleaseの設定には、何もありません。

これらの設定もほとんどが Ogre3Dアプリケーション設定チュートリアル ということです。

解決するには?

MingWを使用してWindows上でC++のコードをコンパイルする場合、オプションの -static-libgcc-static-libstdc++ を使うと、CとC++の標準ライブラリが静的にリンクされるので、それらのコピーを別に持ち歩く必要がなくなります。Windowsではライブラリのバージョン管理が面倒なので、この方法がWindowsのバイナリを作るのに最も迅速できれいな解決策だと思います。