Visual C++ 2008 コマンドラインコンパイラの使い方

Time-stamp: "2011-07-22 Fri 09:24 JST hig"

瀬田学舎の実習室にインストールされたVisual Studio 2008 に含まれる Visual C++ 2008 をコマンドラインで(Linuxの(g)ccと同じのりで)使うときの基本的な使い方を説明します.

ユーザのホームディレクトリを Q:¥と想定しています. 自宅などの標準的な環境で使う場合は, Q:¥C:¥nc などというフォルダを作って代わりに使うことをお奨めします.

以下では, 色とフォントで次のような区別をしています.
  1. スタート>プログラム>プログラミングソフト>Microsoft Visual Studio 2008>Visual Studio Tools >Visual Studio 2008 コマンドプロンプトを起動します. (注:自宅などの標準的なインストールの場合:スタートメニュー>すべてのプログラム>Microsoft Visual C++ 2009 (Express Edition) >Visual Studio Tools >Visual Studio 2008 コマンドプロンプトになります).
  2. コマンドプロンプトが開きます. この時点では, C:¥Program Files¥Microsoft Visual Studio 9.0¥VCがカレントディレクトリのはずです. 実際に作業するディレクトリ, 例:Q:¥ncに移動しましょう. (注:自宅で作業する場合C:¥ncやマイドキュメントの下にしましょう. あらかじめ, このディレクトリを作成しておく必要があります)
    C:¥Program Files¥Microsoft Visual Studio 9.0¥VC¥>Q:
    Q:¥>cd ¥nc
    
    と入力します. cd ncでいいのでは, と思う人もいるでしょうが, 自宅でC:ドライブ(VCがインストールされているドライブ)を使う場合には絶対pathで書く必要があるということでいれてあります.
  3. ソースファイル(プログラム)を上で cd したディレクトリに 作ります. それには次のようにします.
    1. スタート>プログラム>プログラミングソフト>Microsoft Visual Studio 2008>Microsoft Visual Studio 2008を起動します.
    2. 最初の1回は, 開発設定をどれにするかきかれます. Visual C++開発設定を選びます.
    3. ファイル>新規作成>ファイル>Visual C++>C++ファイル(.cpp)を選択して開く
    4. 保存する場所としてコンピュータから探してQ:¥nc以下を選ぶ. ファイル>名前をつけて保存で, hello.cのように名前をつける. ファイルの種類として, Cソースファイル(*.c)を選ぶ. 保存を選ぶ.
    5. プログラムの内容を入力する たとえば, hello.c を以下のような内容で作りましょう.
      
      #include <stdio.h>
      
      int main(void){
          printf("hello, world!¥n");
      return 0;
      }
      
    6. ファイル>保存 Visual Studio 2008を終了する必要はありません. 先ほどのコマンドプロンプトに戻ります.
  4. コンパイルします. Linux でいう cc に対応するコンパイラは cl.exe です
    Q:¥nc>cl hello.c
    で,
    Q:¥nc>cl hello.c
    	
    Microsoft(R) 32-bit C/C++ Optimizing Compiler Version 15.00.30729.01 for 80x86
    Copyright (C) Microsoft Corporation. All rights reserved.
    
    hello.c
    Microsoft (R) Incremental Linker Version 7.10.3077
    Copyright (C) Microsoft Corporation.  All rights reserved.
    
    /out:hello.exe
    hello.obj
    
    
    のような感じで実行ファイルhello.exeができます. 複数のファイルに分割されている場合,
    Q:¥nc>cl hello1.c hello2.c
    
    のようにします. もし, ファイルが見つからない, というエラーになったら確かにカレントディレクトリにあるか確認しましょう.
    Q:¥nc>dir
  5. 実行します.
    Q:¥nc>hello
    
    もし出力が長い場合は,
    Q:¥nc>hello | more
    のようにするとスペースで少しずつ送りながら見られます.
  6. プログラムを修正します. Visual Studio を終了してしまった場合にも, エクスプローラでhello.cをダブルクリックしたり, コマンドプロンプトで
    Q:¥nc>start hello.c
    または
    Q:¥nc>hello.c
    などとすることで編集を再開できます.

なお, 上のようにスタートメニューから実行しなくても, ふつうにコマンドプロンプトを開いて, C:¥Program Files¥Microsoft Visual Studio 9.0¥VC¥bin¥vcvars32.bat を一度実行することによって環境変数を設定すればいいです.

ディレクトリの作成

たとえば, C:\ncディレクトリを作るには, コマンドプロンプトを起動して,

C:¥Program Files¥Microsoft Visual Studio 9.0¥VC¥>C:
C:Program Files¥Microsoft Visual Studio 9.0¥VC¥>cd ¥
C:¥>mkdir nc
などのようにするか, または (マイ)コンピュータからたどって C:¥を表示して, そこで右クリックして新しいフォルダを作成して ncに名前を変更する, などの方法があります.

比較

VC++20081年生でならったのりのgcc/Linux
ソースファイル hello.c hello.c
オブジェクトファイル hello.obj hello.o
実行ファイル hello.exe 任意(a.out, helloなど)
パス名Q:¥nc¥kadai1¥hello.c~/nc/kadai1/hello.c
ファイル一覧の表示dirls
カレントディレクトリの変更cdcd
(テキスト)ファイルの内容の表示typecat
ファイルの消去del hello.crm hello.c
編集start notepad hello.c またはVisual Studio 2008 または好きなテキストエディタ emacs hello.c または好きなテキストエディタ
コンパイル cl hello.c cc -o hello hello.c
実行hello./hello, ./a.out
make nmake make

Copyright © 2002-2010 Saburo Higuchi. All rights reserved.
樋口三郎, http://www.math.ryukoku.ac.jp/~hig/