ショートカットキー
VisualStudio2005でMaikefileを使用する。
ここではVisualStudio2005でC言語プロジェクトをMakefileを用いてコンパイルする方法を解説します。
あらすじ
これまで、VisualStudioはMicrosoftのコンパイラしか使えないものと思い込んでいて、
その利用を断念していましたが、実はどんなコンパイラでも使えるということがわかりました。
その利用を断念していましたが、実はどんなコンパイラでも使えるということがわかりました。
私は.NETアプリケーションを作る際には当然VisualStuidoを使っていましたので、その便利さは身にしみていました。
Eclipse(C言語の場合はこれを使っていた)も良い開発環境ではあるのですが、
いかんせん不安定という一言が付きまとっていました。
というのも、突然、オートコンプリートにえらく時間がかかるようになったり、
定義文や宣言文に飛べなくなったりする現象が発生していたのです。
それに環境を変えるとメニューやショートカットキーが変わるのもつらいです。
Eclipse(C言語の場合はこれを使っていた)も良い開発環境ではあるのですが、
いかんせん不安定という一言が付きまとっていました。
というのも、突然、オートコンプリートにえらく時間がかかるようになったり、
定義文や宣言文に飛べなくなったりする現象が発生していたのです。
それに環境を変えるとメニューやショートカットキーが変わるのもつらいです。
私の場合組み込み開発なのでデバッグ環境までは使えませんが、
Intellisense機能さえうまく機能してくれれば、それはもう目から鱗ものです。
Intellisense機能さえうまく機能してくれれば、それはもう目から鱗ものです。
結果から言って、目から鱗が落ちました。
設定方法
1.メニューから[ファイル]→[新規作成]→[プロジェクト]を選び、[新しいプロジェクト]を開きます。
2.プロジェクト種類で[Visual C++]を選び、その中の[メイクファイル プロジェクト]を開きます。
3.[メイクファイルアプリケーションウィザード]が立ち上がりますので、[デバッグ構成の設定]を選び、
ビルドコマンドライン、すべてリビルドコマンドライン、およびクリーンコマンドラインを次のように設定します。
ビルドコマンドライン nmake /f Makefile
すべてリビルドコマンドライン nmake /f Makefile clean all
クリーンコマンドライン nmake /f Makefile clean
4.完了を押し、[メイクファイルアプリケーションウィザード]を終了します。
5.プロジェクトファイル(.vcproj)があるフォルダにMakefileを配置します。
6.もしMakefileとソースファイルのフォルダ階層が同じなら、ソースファイルもMakefileと同じとこに置きます。
7.ソリューションエクスプローラで作成したプロジェクトを右クリックし、[追加]→[既存の項目]でさきほど配置したMakefileを選択します。
8.プロジェクトにMakefileが追加されたことを確認します。
2.プロジェクト種類で[Visual C++]を選び、その中の[メイクファイル プロジェクト]を開きます。
3.[メイクファイルアプリケーションウィザード]が立ち上がりますので、[デバッグ構成の設定]を選び、
ビルドコマンドライン、すべてリビルドコマンドライン、およびクリーンコマンドラインを次のように設定します。
ビルドコマンドライン nmake /f Makefile
すべてリビルドコマンドライン nmake /f Makefile clean all
クリーンコマンドライン nmake /f Makefile clean
4.完了を押し、[メイクファイルアプリケーションウィザード]を終了します。
5.プロジェクトファイル(.vcproj)があるフォルダにMakefileを配置します。
6.もしMakefileとソースファイルのフォルダ階層が同じなら、ソースファイルもMakefileと同じとこに置きます。
7.ソリューションエクスプローラで作成したプロジェクトを右クリックし、[追加]→[既存の項目]でさきほど配置したMakefileを選択します。
8.プロジェクトにMakefileが追加されたことを確認します。
以上の手順でコンパイルができるようになります。
※「clean」「all」はMakefile内に自分で記述した引数です。
※もし、環境変数の設定が必要な場合は事前に設定しておき、念のためPCに再起動を掛けておきましょう。
※もし、環境変数の設定が必要だが設定したくない場合は、
バッチファイルに設定コマンドを書いておいて、nmakeコマンドの前に実行することで実現できます。
メニューから[プロジェクト]→[プロパティ]でプロパティページを開き、.[構成プロパティ]→[NMake]を選択します。
上記のコマンドラインを次のようにします。
ビルドコマンドライン 環境変数設定.bat & nmake /f Makefile
すべてリビルドコマンドライン 環境変数設定.bat & nmake /f Makefile clean all
クリーンコマンドライン 環境変数設定.bat & nmake /f Makefile clean
※もし、環境変数の設定が必要な場合は事前に設定しておき、念のためPCに再起動を掛けておきましょう。
※もし、環境変数の設定が必要だが設定したくない場合は、
バッチファイルに設定コマンドを書いておいて、nmakeコマンドの前に実行することで実現できます。
メニューから[プロジェクト]→[プロパティ]でプロパティページを開き、.[構成プロパティ]→[NMake]を選択します。
上記のコマンドラインを次のようにします。
ビルドコマンドライン 環境変数設定.bat & nmake /f Makefile
すべてリビルドコマンドライン 環境変数設定.bat & nmake /f Makefile clean all
クリーンコマンドライン 環境変数設定.bat & nmake /f Makefile clean
SourceForgeのリポジトリにアクセスできるまで
tortoiseSVNとputtyをダウンロード
puttygenで鍵を作成
(パスワードを設定すると、tortoiseを使うたびにpageantを起動し、鍵を追加する必要があるかもしれない)
(パスワードを設定すると、tortoiseを使うたびにpageantを起動し、鍵を追加する必要があるかもしれない)
公開鍵をSourceForgeサイトに登録する。※これをしないと、connection refusedとなる
このとき、はじめのssh-rsaを含め、全てをコピーすること。
このとき、はじめのssh-rsaを含め、全てをコピーすること。
次に、サーバーにSSH鍵キャッシュを作成する。
http://openoffice-docj.sourceforge.jp/doc/docproject/tortoisecvs_sf.html
http://openoffice-docj.sourceforge.jp/doc/docproject/tortoisecvs_sf.html
PageANTを起動
タスクトレイで右クリックし「鍵を追加」
タスクトレイで右クリックし「鍵を追加」
PUTTYを起動し、shells.sourceforge.jpに接続する。
ログインできればOK
次にsvn.sourceforge.jpにログインする。
ログインできればOK 俺の場合、何度かログインしないと、プロンプトが出なかった。
ログインできればOK
次にsvn.sourceforge.jpにログインする。
ログインできればOK 俺の場合、何度かログインしないと、プロンプトが出なかった。
Tortoiseの設定
エクスプローラで適当なところで右クリックする
Network/SSHClient
C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe
(オプションはいらない)
C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe -l サーバの自分のアカウント名 -i 'ppkファイルのフルパス'
エクスプローラで適当なところで右クリックする
Network/SSHClient
C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe
(オプションはいらない)
C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe -l サーバの自分のアカウント名 -i 'ppkファイルのフルパス'
RepositoryBrowserを起動して、次のURLを入力する。
svn+ssh://qutto@svn.sourceforge.jp/svnroot/ulz01
svn+ssh://qutto@svn.sourceforge.jp/svnroot/ulz01
VisualStudio2005ServicePack1をインストールする
随分前のことになりますが、2006年12月18日、VisualStudio2005用のServicePack1がリリースされました。
インストールファイルは以下からダウンロードできます。
http://www.microsoft.com/japan/msdn/vstudio/downloads/sp/vs2005/sp1/
http://www.microsoft.com/japan/msdn/vstudio/downloads/sp/vs2005/sp1/
- Professional、Standerdエディションの人は以下のファイルをダウンロード
- Expressエディションの人は以下のファイルをダウンロード
ファイル名:VS80sp1-KB926748-X86-INTL.exe (※C++ Express用です)
ファイル名:VS80sp1-KB926749-X86-INTL.exe (※C# Express用です)
ファイル名:VS80sp1-KB926749-X86-INTL.exe (※C# Express用です)
インストールには数時間かかります。暇なときにやりましょう。
で、注目したいのは(組み込み開発に使用する)C++プロジェクトに対する改善です。
いろいろ謳っていますが詳しくはリリースノートを見てもらうということで、ここでは私が体感していることを述べておきます。
いろいろ謳っていますが詳しくはリリースノートを見てもらうということで、ここでは私が体感していることを述べておきます。
- プロジェクトの読み込み/終了、特に後者が劇的に早くなっていると感じます。
- プロジェクトが強制終了しにくくなって・・・いるような気がします。
- Intellisenseが賢くなっているように感じます。
三つ目は非常に重要ですね。そのためにVisualStudioを使っているようなものですから。
ところがうれしいことに、つい最近2008年4月9日、ServicePack1とは別でIntellisense改善用のパッチがリリースされました。
以下からダウンロードできます。
http://code.msdn.microsoft.com/KB947315/Release/ProjectReleases.aspx?ReleaseId=872
ファイル名:VS80sp1-KB947315-X86-JPN.exe (※SP1を先にインストールしておく必要があります)
ところがうれしいことに、つい最近2008年4月9日、ServicePack1とは別でIntellisense改善用のパッチがリリースされました。
以下からダウンロードできます。
http://code.msdn.microsoft.com/KB947315/Release/ProjectReleases.aspx?ReleaseId=872
ファイル名:VS80sp1-KB947315-X86-JPN.exe (※SP1を先にインストールしておく必要があります)
効果のほどはお試しあれ。
自分はこれを入れてからIntellisenseが機能しないなんてことはなくなりました。
自分はこれを入れてからIntellisenseが機能しないなんてことはなくなりました。
VisualStudio2005で突然ブレークポイントがヒットしなくなる現象
この現象はVisual C++で確認しています。
既定では、ブレークポイントがヒットするのは、ブレークポイントを設定したソースファイルのバージョンが、実行ファイルのコンパイル元であるソースファイルと正確に一致する場合のみです。
ヒットしなくなる主な原因はそれらファイルに差異が生じたことによるものですが、
なぜ差異が生じるかについてはよくわかりません。
とりあえず、この現象を回避するには
[ツール]メニュー→[オプション]→[デバッグ]→[全般]→[元のバージョンと完全に一致するソースファイルを必要とする]
をオフにします。
既定では、ブレークポイントがヒットするのは、ブレークポイントを設定したソースファイルのバージョンが、実行ファイルのコンパイル元であるソースファイルと正確に一致する場合のみです。
ヒットしなくなる主な原因はそれらファイルに差異が生じたことによるものですが、
なぜ差異が生じるかについてはよくわかりません。
とりあえず、この現象を回避するには
[ツール]メニュー→[オプション]→[デバッグ]→[全般]→[元のバージョンと完全に一致するソースファイルを必要とする]
をオフにします。