もう少ししたら纏めます。
この page は Inprise (旧 Borland)社から公開されている Borland C++ Compiler 5.5(以後、BCC) を取り扱っています。BCC は、現在商品として販売されている Borland C++Builder のサブセットとして無償で公開されています。通常、体験版等の扱いでは制限が生じたり、コンパイルした結果を配布したりすることが出来ませんが、この BCC はライセンスに従うことでこの手の制限はないようです。もちろん使用に当たってはライセンスについては個々で確認してください。
ただせっかく無償で公開されているにも係わらず、現在の所、BCC について良書を見かけたことがありません。そこで私の勉強ついでに纏めてみたいと思います。これから、BCC を弄ってみようと思っている方、Windows プログラムを試食してみたい方の参考になれば幸いです。
以下の page に BCC の要約があります。
入手方法は Inprise から直接 download してくるか、若しくは雑誌のオマケに付属している場合もあります。ただし、BCC は 5.5.1 以上に update した方が良いのでやはり直接 download したほうがよいでしょう。
インストーラーに従ってください。難しいところは無かった、と思います。詳細に関しては他の page に詳細があるので検索してみてください。
make file の front end として win32b55.mak を作成しました。自分で言うのもナンですがかなり重宝しています。Visual C++ との誤差を埋めるよう努力しているし、BCC 5.5 で多発していた一般保護エラー対策もしてある(この問題は BCC 5.5.1 になって解消されているとのことだが検証はしていない)。Dirert X 関連も極力、彼らの配布している SDK と似せるよう考慮したつもりです。しかもデフォルトの INCLUDE directry や LIBRARY directry を指定しなくでも、win32b55.mak が肩代わりします。是非使用してみてください。
以下のような makefile を作成します。
## console makefile
## 00.10.07 : Mc.N(Makoto NARA)
##
TARGET = CONSOLE
!include "win32b55.mak"
PROJ = console
EXE = $(PROJ).exe
OBJS = $(PROJ).obj
## RESOURCE_OBJ = $(PROJ).res
## DEFS = $(PROJ).def
## MAPFILE = $(PROJ).map
$(EXE): $(OBJS) $(RESOURCE_OBJ)
$(LINKER) $(LINKFLAGS) $(LINKSTARTUP) $(OBJS),$*,$(MAPFILE),$(LINKLIBS),$(DEFS),$(RESOURCE_OBJ)
default: $(EXE)
## clean rule
clean:
-del *.bak
-del *.pdb
-del *.obj
-del *.res
-del *.exp
-del *.map
-del *.sbr
-del *.bsc
-del *.tds
-del *.il?
-del *~
clobber: clean
-del *.exe
-del *.dll
-del *.lib
!include "win32b55.mak"より上で以下の設定が出来ます。TARGET 以外はデフォルトでイケると思う。Turbo Debugger でデバッグする時は DEBUG = 1 を忘れずに。
設定 | 内容 |
TARGET | make する実行ファイルの種類を設定します。 TARGET = CONSOLE は main() で始まる コンソールプログラム。 TARGET = WIN32GUI は WinMain() で始まる Windows プログラム。 TARGET = WIN32DLL は DLL を作成する時に指定します。 デフォルトは TARGET = CONSOLE。 |
MT | MT = 1 でマルチスレッド対応ライブラリを使用。 デフォルトは MT = 0。 |
DEBUG | DEBUG = 1 でデバッグ専用コンパイル。 デフォルトは DEBUG = 0 |
ALIGN | アライメントの指定。1, 2, 4, 8 を指定できる。 デフォルトは ALIGN = 8。Visual C++ の仕様に合わせた。 |
CPUOPT | CPU の最適化。3(i386), 4(i486), 5(Pentium), 6(PentiumPro) が指定できる。 デフォルトは CPUOPT = 3。 |
PRECOMPILE | PRECOMPILE = 1 でプリコンパイルヘッダを使用。 デフォルトは PRECOMPILE = 0。 |
NOPATCHS | NOPATCHS = 1 で各種秘伝の patch を当てない。隠し味? PATCH は基本的には Windows NT を基本としている。 デフォルトは NOPATCHS = 0。 |
!include "win32b55.mak"より下では、PROJ、EXE、OBJS を必ず指定してください。PROJ、EXE はプログラム名、OBJS はオブジェクト名を指定します。それ以外は必要に応じて。
調査中。
調査中。
調査中。
調査中。
調査中。
調査中。
調査中。
調査中。
調査中。
[Home] → [Development Room] → [Borland C++ Compiler 5.5 Techniques]
Copyright (c) 2000-2001 Makoto NARA (Mc.N), All rights reserved.
[Terms of Use]