私の自作プログラムのビルドについて
Counter : 79282
unixでのビルド方法
基本的に「makefile.unx」でMakefileビルド記述していますので、
そのまま「make -f makefile.unx」の実行でビルドできるかと思います。
v4l2など、OSに強く依存しているもの以外は特に変なことはしてないと思います
・・・
Windowsでのビルド方法
VisualStudioでのビルド方法
プロジェクトのファイルは、VisualStudioのバージョンによって変更が入っていて
使い回しがとても不便なのと、サイズが無駄にデカくなることが多いため、
基本的に公開当時のプロジェクトファイルのみを添付で済ませています。
現在使用されているものよりも新しいバージョンの場合は、ウィザードでの
自動変換で割とうまくいくようです。
(Warningはいくつか出ますが無視してください)
以下、「私の公開しているソースファイル」をビルドする際に必要な情報です。
若干私の特有の事情が入っていますが、その差が理解できれば一般的なビルド
作成手法としても見て頂ければ幸いです。
プロジェクトは基本的には以下の手順で自分で作成してください。
バージョンが違っても大体同じ手順で実行できるはず、です。
※個別に必要な部分や、詳細な設定は、ソース毎にテキストファイルを追加して
いると思いますので、そちらを読んでください。
●最初に、「完全に空のプロジェクト」を作成します。
- VisualStudioを起動する
- 「ファイル」->「新規作成」->「プロジェクト」を選択
- 「VisualC++」->「Windowsデスクトップ」の中の、
「Windowsデスクトップ ウィザード」を選択する。
他の場所にある「空のプロジェクト」はNGです。
- Windowsデスクトッププロジェクト、のウィンドウが開くので、その中の
「空のプロジェクト」を※必ず※チェックして、
用途によって、「コンソールアプリケーション」もしくは
「Windowsアプリケーション」を選択してください。
- (2015以前の場合)
「Win32コンソールアプリケーション」もしくは「Win32プロジェクト」を選択し、
途中「空のプロジェクト」を※必ず※チェックして、
「次へ」もしくは「OK」を押す。
※コンソールかWin32かどちらを使うかは、ソースによって異なります。
私が作る(公開している)ソースの場合、ほとんどの場合(主にunixと共用の場合)
はコンソール、Windows専用でウィンドウを作る場合はWin32です。
・とにかく「空のオブジェクト」となるように作成してください。
(ソースファイル等が全く自動生成されていない状態でなければいけません)
「完了」をいきなり選択しないで、「次へ」を押すと出てくるウィンドウで
「空のプロジェクト」のチェックを必ずどこかで実施してください。
●次に、「ソースファイルをコピーし、プロジェクトに追加」します。
- 私の公開しているソースファイル
(.cファイル、.hファイル、.fファイル、.cppファイル、.hppファイル)を展開し、
1つのアーカイブファイル内の全てのファイルを作成された
プロジェクトのフォルダにコピーしてください。
- 「プロジェクト」->「既存項目の追加」を選択
- アーカイブから展開した全てのファイルを選択。
(ファイルの種類を「VisualC++ファイル」にして、「全て選択」でも構いません)
- 「追加」を選択。
●次に、「プロジェクトの設定」を行います。
- 「プロジェクト」->「プロパティ」を選択する。
- 一番最初に構成を「すべての構成」にしておくと、後々面倒が無いでしょう。
- 「構成プロパティ」の「全般」の中で、
「文字セット」を「Unicode文字セットを使用する」から
「マルチバイト文字セットを使用する」に変更。
※2011年10月時点では、ほとんどの文字列処理部分が、
Unicode文字セットに対応できていません。
※2017年12月時点で、ほぼUnicode文字セット対応完了しました、
が、たぶんまだ公開されてない状況が混じってるかもしれません。
- ソリューション構成は「Release」の方が良いでしょう。
(実行速度などの面で差があります)
- △必要に応じて、
「構成プロパティ」->「C/C++」で、追加のインクルードディレクトリを設定する。
※主にDirectShowなどの、Windows特有のインクルードが必要な場合に設定します。
※リンクファイル名については、(#pragmaを使って)ソース内に埋め込んでいるので
ここでの設定は不要です。
- △必要に応じて、ユーザー権限の設定をする。
「構成プロパティ」->「リンカ」->「マニフェストファイル」で、
「ユーザーアカウント制御(UAC)を有効にする」で「はい」を選択
「UACの実行レベル」を「requireAdministrator」に変更
※主に(pingを打つ場合など)管理者権限が必要なプログラムの場合に設定します。
●最後に、「ビルド」を実行します。
- 「ビルド」->「ソリューションのビルド」を選択。
(横着な人はショートカットキー
(「F7」もしくは「Ctrl+Shift+B」(最近のVisualStudioの場合))
を押す方が楽だと思います)
●Releaseフォルダから実行ファイルをコピーして実行します。
- VisualStudioを使ったデバッグや、ダンプファイルを使ったデバッグは、
私自身いろいろと使いこなせてないので、ここでは説明できません・・・すみません。
他のCコンパイラでのビルド方法
特別なライブラリが必要なもので無い限りは、
他コンパイラでもビルド可能だと思います。
ですが、私自身が具体的な手法を把握できていませんので、
ノーサポートとさせてください。
E-mail address :
saibara@big.or.jp