2

Windows用のコマンドラインプログラムをコンパイルできるように、Ubuntuラップトップからクロスコンパイラをセットアップしようとしています。今まで g++ で必要なすべてのライブラリをコンパイルしたので、同等の Windows バイナリを生成するために同じことをしたかったのです。

apt-get 経由で gcc-mingw をインストールしましたが、多数のバイナリがインストールされました。i686-w64-mingw32-g++バイナリを使用して、Windows 用の「Hello World」プログラムを正常にコンパイルしました。

ただし、より複雑なプロジェクトのコンパイル中に問題が発生しました。このバイナリには、標準の g++ とは異なるフォルダーが含まれており、依存関係 (ブースト ヘッダー、bits/predefs.h など) が見つからないことに気付きました。g++ がすぐに使えるように mingw パラメータを設定する方法はありますか?

4

1 に答える 1

0

問題が見つかりました。使用していた Boost ライブラリは、apt-get でインストールしたものです。どうやらこれは、多く#if defined (__GLIBC__)が自動的に に変換されたことを意味していたよう#if 1です。これにより、一部の非クロスプラットフォーム ヘッダー ファイルが含まれていました。ウェブサイトからライブラリをダウンロードして使用すると、問題は解決しました。

于 2013-02-09T12:47:18.357 に答える