外部 C++ コード (CoolProp) を含む C++ プロジェクトがあります。この外部コードは、静的ライブラリとしてコンパイルしました。コンパイラは -m32 オプション付きの TDM-GCC Vers 5.1.0 です。-m32 オプション付きの TDM-GCC バージョン 5.1.0 を使用して、C++ コードで再度呼び出します。小さなコマンド ライン テスト プログラムをコンパイルして実行することができました。コンパイル シーケンス全体 (Windoes コマンド ライン プロンプトまたは MSYS 1.0):
- パッケージの流体の流れ
g++ -c -o build/fluidflow.o -LC:/CoolProp/5.1.2/CoolProp/build -I./include -IC:/CoolProp/5.1.2/CoolProp/include src/fluidflow.cpp -lCoolProp -m32 && ar rcs build/libfluidflow.a build/fluidflow.o
- パッケージ式
g++ -c -o build/formulae.o -I./include src/formulae.cpp -lm -m32 && ar rcs build/libformulae.a build/formulae.o
- パッケージファンコイル
g++ -c -o build/fancoil.o -I./include src/fancoil.cpp -lm -m32 && ar rcs build/libfancoil.a build/fancoil.o
- パッケージ回路
g++ -c -o build/circuit.o -L./build -LC:/CoolProp/5.1.2/CoolProp/build -I./include src/circuit.cpp -IC:/CoolProp/5.1.2/CoolProp/ include -lm -lfancoil -lformulae -lfluidflow -lCoolProp -m32 && ar rcs build/libcircuit.a build/circuit.o
- パッケージセル
g++ -c -o build/cell.o -L./build -LC:/CoolProp/5.1.2/CoolProp/build -I./include src/cell.cpp -IC:/CoolProp/5.1.2/CoolProp/ include -lm -lcircuit -lfancoil -lformulae -lfluidflow -lCoolProp -m32 && ar rcs build/libcell.a build/cell.o
- テスト プログラム、流体フローとファンコイルのパッケージ
g++ -o test/test_simple.exe -L./build -LC:/CoolProp/5.1.2/CoolProp/build -I./include test/test_simple.cpp -IC:/CoolProp/5.1.2/CoolProp/include - lm -lcell -lcircuit -lfancoil -lformulae -lfluidflow -lCoolProp -m32 && cd テスト && test_simple.exe
次に wxWidgets, Vers 3.0 で GUI プログラムを作ってみました。ライブラリを呼び出さなかった限り、g++ fancoil_gui.cpp wx-config --cxxflags --libs
-o fancoil_gui で msys を使用してコンパイルできました libformulae.a/formulae.h などのライブラリを呼び出そうとしたときに、-m32 オプションを使用すると、コンパイルは常に終了しますのようなエラーで
c:/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld. exe: -lwxregexu-3.0 の検索時に互換性のない C:/msys/1.0/local/lib/libwxregexu-3.0.a をスキップする
オペレーティング システムは 64 ビット Windows 7 です
エラーを作成せずにそれを行うにはどうすればよいですか?