C++ 開発を始めたばかりで、emacs を使用してコードを記述し、Visual Studio 6 コンパイラを使用して emacs 内からコンパイルおよび実行したいと考えています。私はすでに少しグーグルで検索しましたが、これがどのように行われるかについての説明を見つけることができないようです. ポインタはありますか?
ご協力いただきありがとうございます、
ヨルグ
C++ 開発を始めたばかりで、emacs を使用してコードを記述し、Visual Studio 6 コンパイラを使用して emacs 内からコンパイルおよび実行したいと考えています。私はすでに少しグーグルで検索しましたが、これがどのように行われるかについての説明を見つけることができないようです. ポインタはありますか?
ご協力いただきありがとうございます、
ヨルグ
当然のことながら、私は過去数年にわたってこれを行ってきました。これを行うには2つの方法があります。
古いバージョンのVS(VS 6.0を含む)には、プロジェクトのnmakeファイルをエクスポートするためのボタンがあります。私は時々これを行い、次にnmakeを使用してコンパイルします。私は持っています
(setqcompile-コマンド"nmake debug")
これについては、私の.xemace/init.elにあります。nmakeファイルの名前を追加する必要があり、nmake.exeがパスに含まれている必要があります。(ところで、エラーを移動できるように、compliation-error-regexp-alist-alistを変更しました。これも必要な場合はお知らせください。)
新しいバージョンのVSには、nmakeファイルをエクスポートするためのボタンがありません。これらについては、devenv.comに電話します。この場合、私は
(setq compile-command "devenv.com / build Debug")
私の.xemacs/init.elにあります。.slnファイルの名前を追加する必要があります。VS 6.0ではこれを行いませんでしたが、同様に機能する可能性があると思います。
Visual Studio 内のテキスト エディターを Emacs に単に交換することを検討するかどうかはわかりませんが、これを行う sf.net プロジェクトを次に示します。
Andrew Stein の回答のフォローアップとして、nmake を使用せずに Visual Studio 6 でコマンド ライン ビルドを実行するには、次の構文を使用します。
msdev wspname.dsw /make "project - Win32 Debug"
Visual Studio は IDE です
下で cl.exe コンパイラを使用します。
私たちは独自の gmake ラッパー実行可能ファイルでラップされたGNU make (gmake) でemacs を使用しており、非常にうまく機能します。
.obj ファイルを構築するためにコンパイルしている .c/.cpp ファイルで cl.exe を呼び出す単純なキーバインドを設定するだけです。フォルダー内のコンパイルを初期化するためのキーバインドが 1 つあります。これにより、最新ではないすべての .obj ファイルが作成されますが、これは純粋に GNU make によって処理されます。
実行可能ファイルのリンクや起動など、他のキーバインドもあります。
少し話が逸れますが、なぜ Visual Studio 6 を使用しているのですか? 現在のバージョンの Visual Studio 用のコンパイラ (および簡素化された IDE) は、Microsoft から無料で入手できます。
どちらの場合も、コマンドラインからコンパイラを呼び出すことができるので、makefile をセットアップするのと同じくらい簡単です。
コンパイルする単一のファイルを設定したいだけの場合は、これをファイルの先頭に置きます...
// -*- compile-command:"g++ test.cpp -g -lwinmm -o test.exe"; -*-
これに関する私のブログ投稿を参照してください
もちろん、CL.EXE を使用するように調整し、適切な引数を選択する必要があります。
階層のさらに下にあるファイルを編集している場合、親ソース ディレクトリにいるかのように make を実行する必要があるため、make を起動する場合は少し注意が必要です。
私が知っている唯一の方法は、これをすべてのファイルの先頭に置くことです...
// -*- compile-command:"nmake"; default-directory:"c:/projectroot/"; -*-