静的ライブラリの作成方法と使用方法を学びたいと思っていますが、いくつかの問題に直面しました。これは私がやったことです。
最初に、いくつかのコードを記述しString.h
、String.cpp
ファイルに配置しました。
次に、オブジェクト ファイルにコンパイルしました。
mingw32-g++ -c -O2 -s -DNDEBUG String.cpp -o .\obj\String.o
それから私はそれをアーカイブしました(?):
ar cr .\lib\String.lib .\obj\String.o
そして、それをインデックス化(?)しました:
ranlib .\lib\String.lib
その後、テストを正常にコンパイルして mingw にリンクしました。
mingw32-g++ -std=c++03 -Wall -O2 -s -DNDEBUG .\test\src\test.cpp .\lib\String.lib -o .\test\bin\test.exe
テストは完全にコンパイル、リンク、実行されました。
その後、このライブラリを MSVS12 プロジェクトに含めたいと考えました。私は:
へのパスを追加しまし
String.h
たProject - C/C++ -General - Additional Include Directories
String.h
一部のプロジェクト ヘッダーに含まれるへのパスを追加しまし
String.lib
たProject - Linker - General - Additional library directories
String.lib
に追加Project - Linker - Input - Additional dependencies
これらすべての手順の後、プロジェクトをビルドしようとすると、リンカーは多くLNK2011
のLNK2019
エラーを出します。私の機能の実装が見つからないようです...
何が間違っているのか、どうすれば修正できるのか教えてください。ありがとう!