プロジェクトの作成はメニューから
「ファイル」-->「新規」-->「C/C++ プロジェクト」を選択する。
「新規 C/C++ プロジェクトのテンプレート」のダイアログが表示されるので、
「C++ 管理ビルド」を選択して「次へ」のボタンを押す
「C/C++ プロジェクト」のダイアログが表示されるので、 プロジェクト名に "basic1" を指定 「Hello World C++ Makefile プロジェクト」を選択して完了ボタンを押す。
CXXFLAGS = -O2 -g -Wall -fmessage-length=0 OBJS = basic1.o LIBS = TARGET = basic1.exe $(TARGET): $(OBJS) $(CXX) -o $(TARGET) $(OBJS) $(LIBS) all: $(TARGET) clean: rm -f $(OBJS) $(TARGET) |
//============================================================================ // Name : basic1.cpp // Author : // Version : // Copyright : Your copyright notice // Description : Hello World in C, Ansi-style //============================================================================ #include |
DEBUG=1 #PTR32=1 OBJS = basic1.o LIBS = # リンカーオプション LDFLAGS = TARGET = basic1.exe CXXFLAGS = -Wall -fmessage-length=0 -D__CONSOLE_ ifeq ($(DEBUG),1) CXXFLAGS += -O0 -g -D_DEBUG else CXXFLAGS += -Os endif ifeq ($(PTR32),1) CXXFLAGS += -D__PTR32 endif #出力を Shift_JIS にする #CXXFLAGS += -fexec-charset=CP932 $(TARGET): $(OBJS) $(CXX) -o $(TARGET) $(OBJS) $(LIBS) all: $(TARGET) clean: # rm -f $(OBJS) $(TARGET) del *.o del *.exe |
私的に追加したシンボルは、DEBUG と PTR32 である。
DEBUG は、デバッグ版とリリース版の切り替え用である。
PTR32 は、32bit版と642bitの切り替え用である。
コンパイラに渡される(かもしれない)シンボルは、
_DEBUG と __PTR32 と __CONSOLE__ である。
__CONSOLE__ は、ウインドウズアプリとコンソールアプリの切り替え用である。
ここで出て来るコンパイルオプションは以下のとおり。
クリーナップ処理の部分は、windows には rm コマンドがないので、 del コマンドで置き換えた。
この変更作業をエディターで行なったのだが、
Eclipse が自動的に検知して反映してくれた。
使い慣れたエディターで作業できるのはありがたい。
次に実行時であるが、コマンドプロンプトから
basic1.exe を実行すると、文字化けする。
chcp 65001 と打ち込んで、文字コードを UTF-8 に変更するか、
あるいは、コンパイルオプションで出力を Shift_JIS にするかである。
なおコマンドプロンプトの文字コードを Shift_JIS に戻すには chcp 932 と打ち込む。