質問というより個人の意見を聞かせていただくことになってしまいますが、聞かせていただきます。
静的ライブラリ、同的ライブラリって皆さんどこにおいていますか?
過去に見たことあるのは、
1. ソースファイルの置場と同じ場所:ソースファイルと混濁する
2.ソースファイルの置場にファイルを置いて作る:#include <"??/??.lib">とするのが若干面倒
3.ソースファイル、ライブラリ、生成ファイルの各置場を作る:#include <./??/??.lib>とするのが面倒、ファイルを探しにくい
の3つがあります。
横にあるのが個人的にデメリットでして、どれが一番最適なのか、もしくは他にいい案があるのか気になりました。
一応
OS: Win7
Compiler: MinGW-w64
editor: VScode
静的ライブラリの置き場所
Re: 静的ライブラリの置き場所
MinGW-x64 って、GCC(gcc, g++) ですよね。
私は、Cygwin しか使っていないので、間違っているかも
しれませんが、gcc ということで思っていることを書きます。
#include <"??/??".lib"> というのは違和感ありまくりです。
#include ですが、<ヘッダー> と "ヘッダー" なら分かりますが、
<"ヘッダー"> という書き方はないと思います。
#include <stdio.h> とか #include "hoge.h" のように
ヘッダーファイルの拡張子は .h のはずです。
.lib と書くことは通常ありません。
.lib というのは、Windows での静的ライブラリの拡張子です。
gcc なら .a のはずでは?
動的(同的ではない)ライブラリの拡張子は、
Windows なら .dll、Linux なら .so (共有ライブラリ)ですが、
Cygwin の場合は .so も .dll にするようです。
ヘッダーファイルやライブラリはどこにおいてもよく、
#include "???.h" にして、コンパイルを
gcc -o exec-file -Iinc-dir -Llib-dir source-files lib-files
のようにするのが普通ではありませんか?
lib-file が libxxx.a や libxxx.dll なら -lxxx でも指定できます。
意見を述べたので、返信をお願いします。
私は、Cygwin しか使っていないので、間違っているかも
しれませんが、gcc ということで思っていることを書きます。
#include <"??/??".lib"> というのは違和感ありまくりです。
#include ですが、<ヘッダー> と "ヘッダー" なら分かりますが、
<"ヘッダー"> という書き方はないと思います。
#include <stdio.h> とか #include "hoge.h" のように
ヘッダーファイルの拡張子は .h のはずです。
.lib と書くことは通常ありません。
.lib というのは、Windows での静的ライブラリの拡張子です。
gcc なら .a のはずでは?
動的(同的ではない)ライブラリの拡張子は、
Windows なら .dll、Linux なら .so (共有ライブラリ)ですが、
Cygwin の場合は .so も .dll にするようです。
ヘッダーファイルやライブラリはどこにおいてもよく、
#include "???.h" にして、コンパイルを
gcc -o exec-file -Iinc-dir -Llib-dir source-files lib-files
のようにするのが普通ではありませんか?
lib-file が libxxx.a や libxxx.dll なら -lxxx でも指定できます。
意見を述べたので、返信をお願いします。