問題タブ [mingw]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
15143 参照

c++ - C ++標準ライブラリはアプリケーションにどのようにリンクされていますか?

通常、サードパーティ(非標準)C ++ライブラリのコード(ヘッダーを含む)を使用する場合、ビルド済みのバイナリファイルは、アプリケーションを表すターゲット実行可能ファイルにリンクされます(または含まれます)が、C ++標準ライブラリはどうなりますか? 、私が見た限りでは、C ++標準ライブラリからのコードのみを使用するアプリケーションとともにライブラリを出荷する必要はありません。したがって、コードは静的にリンクされ、実行可能ファイルに含まれていますか?

0 投票する
4 に答える
5195 参照

linker - MinGWリンカーがMPICH2ライブラリを見つけることができません

MPICH2はC:\ Program Files\MPICH2にインストールされます。(対象の)2つのサブディレクトリがあり、\include.hファイルと\lib.libファイルが含まれています。

MPICH2に付属のreadmeには、次の手順があります。

  1. makefileを作成する
  2. 追加–I...mpich2\include
  3. 追加–L...mpich2\lib
  4. 追加–lmpi
  5. ソースファイルのルールを追加します
  6. コンパイル

私のプロジェクトには他のルールがないので、makefileを作成しません。コマンドラインに移動して、次のようにコンパイルしてみます。

これによりundefined reference、コード内のすべてのMPIシンボルで一握りのエラーが発生します。私はそれを修正しようとして何時間も費やし、ジャグリングし-I、切り替え、パラメーターの順序をシャッフルし、すべての.libファイルをソースと同じディレクトリにコピーしましたが、何も機能しないようです。-L-l

これをリンクさせるには、どのようなブードゥーが必要ですか?


編集:私は問題を見つけたと思います:これは冗長モードでのリンカーの出力の抜粋です(-Wl,--verboseコンパイルコマンドに追加):

どうやら、リンカは私が提供するディレクトリ名に/代わりにを追加します\(何らかの理由でフォーマットを探す場合を除くlib___.a)。これは明らかに有効なパスではありません。スラッシュの代わりにバックスラッシュを使用するようにリンカーに指示する方法はありますか?

これも私の目に留まりました:

だから私はこのようにコンパイルしてみました:

しかし、それでも同じundefined referenceエラーが発生します。

0 投票する
3 に答える
4550 参照

windows - mingw32RubyインストーラーforWindows

Windows用の新しいRubyインストーラーはどれくらい良いですか?

以前、RubyがWindowsで非常に遅い理由について質問しましたが、新しいインストーラーで使用されるminGWコンパイルで速度が大幅に向上することを示すいくつかの印象的なベンチマークを見て、それを試した人にとってどのように機能するのか興味がありますか?

このバージョンではいくつの宝石が壊れていますか?あなたがこのリストに載っていない大きなものはありますか?

0 投票する
3 に答える
2486 参照

c++ - MinGWプログラムからPostgresを呼び出す最も簡単な方法は何ですか?

必要なのは、MinGWにPostgresと通信させることだけです。私はいくつかのオプションを検討しました:

  1. libpqを使用します。Postgres for Windowsに付属しているlibpq.libリンクは問題ありませんが、ライブラリを使用するとクラッシュします。VC++用にコンパイルされたからだと思います。libpqコードだけが見つからないため、MinGWでPostgresツリー全体を再コンパイルする必要があります。簡単ではありません。
  2. libpqxxを使用します。libpqが必要です!
  3. libodbcxxを使用します。iodbcのような何らかのODBCマネージャーが必要です。たぶん私はiodbcを直接使うことができます。これは今のところWindowsだけなので、リンカーで-lodbcを使用して、Windows固有のコマンドを使用できますか?

オプション1は最も痛みが少ないように聞こえます。プロジェクトがPostgresを使用することはかなり確信していますが、プロジェクトがWindows上にとどまるかどうかはあまりわかりません。この機能を取得する簡単な方法はありますか?

0 投票する
3 に答える
3472 参照

c++ - mingw の UTF-8 用の C++ ctype ファセット

プロジェクトでは、すべての内部文字列が utf-8 エンコーディングで保持されます。このプロジェクトは Linux と Windows に移植されています。現在、to_lower 機能が必要です。

POSIX OS では、std::ctype_byname("ru_RU.UTF-8") を使用できます。しかし、g++ (Debian 4.3.4-1) では、ctype::tolower() はロシア語の UTF-8 文字を認識しません (ラテン語のテキストは小文字で問題ありません)。

Windows では、"ru_RU.UTF-8" 引数を指定して std::ctype_byname を構築しようとすると、mingw の標準ライブラリが "std::runtime_error: locale::facet::_S_create_c_locale name not valid" という例外をスローします。

Windows で utf-8 の std::ctype を実装/検索するにはどうすればよいですか? プロジェクトはすでに libiconv に依存しています (codecvt ファセットはそれに基づいています) が、to_lower を実装する明確な方法がわかりません。

0 投票する
1 に答える
1103 参照

c++ - MinGW で libpqxx をリンクできません

MSYS を使用して、libpq をコンパイルしました (postgres のコンパイルから)。次に libpqxx をコンパイルしました。ここで、libpqxx を使用するクライアントを作成したいと考えています。libpq は問題なく動作しているように見えました。また、libpqxx でコードをコンパイルできます。ただし、libpq クライアント アプリケーションのリンクは失敗します。

これが私のコードです:

リンクにたくさんのライブラリを追加しましたが、それが突然機能することを望んでいませんでした。これが私がこれまでに持っているものです:

-lws2_32 が「select@20」を与えるべきだったと思います。なぜリンカはとても高尚なのですか?

0 投票する
3 に答える
233 参照

windows-xp - 単純な GTK+ ベースのアプリの起動に 8 秒かかるのはなぜですか?

.exe が小さい GTK+ アプリを作成しましたが、もちろんすべての GTK+ アプリと同様に、(Windows で) 多くの DLL とリンクしています。この時点で私のプログラムが行っていることは、GtkWindow、GtkTable、および約 12 の他のウィジェットで構成される GUI を構築することです。それでおしまい。

それでも、2 GHz の WinXP マシンで起動すると、約 8 秒かかります。

GTK+ は肥大化しすぎているのでしょうか?

GTK+ の実験を始める前に、(MFC を使用するために料金を支払うのではなく) 独自のウィジェット セットの開発を開始したことを付け加えておきます。これにより、基本的にプログラムの起動に遅延がまったく追加されません。

0 投票する
1 に答える
4110 参照

mingw - MSYS に mkdir がありません

MSYS でこれを取得するのはなぜですか?

cd や pwd などの基本的なコマンドは問題なく動作します。mkdir はどうなりましたか?

0 投票する
2 に答える
2320 参照

open-source - mingw32-make:「入力行が長すぎます」の問題

Windows 2003マシンで実行されるMakefileがあり、それにmingw32-makeを使用しています。Makefileには多くのインクルードパスがあるため、cmdが処理できる8Kのバッファーサイズを超えています[参照-http ://support.microsoft.com/kb/830473/EN-US/これにより、コンパイルの結果は「入力」になります。行が長すぎます」という問題。

私は次のことを知りたかった-

  1. 不要なコンパイラスイッチやインクルードパスなどをすでに削除しているので、Makefileを最適化するための最良の方法は何でしょうか。

  2. すべてのINCLUDEパスを1つの.txtファイルに入れてMakefileにインポートする方法はありますか?同じもののmingw32ドキュメントが見つかりませんでした。

その他の入力/ヒント/参照リンクは大歓迎です。

ありがとう、
-HJSblogger

0 投票する
6 に答える
19390 参照

mingw - mingw 3.4.5 dlfcn.hがありませんか?

mingw 3.4.5のインストールに問題がある可能性はありますか?または、これは他のライブラリで提供されていますか?

ご参考までに、dlfcn.hはdlopenやdlcloseなどが定義されている場所なので、かなり標準的なはずです。