Трансляция исходных текстов приложения
Если вы будете транслировать исходные тексты приложений, приведенных в нашей книге с помощью системы разработки Borland C++ for OS/2, то сможете воспользоваться навыками, полученными при программировании в среде MS-DOS или Microsoft Windows. Все, что вам нужно сделать, это создать новый проект, добавив в него файлы с именами *.c, *.rc и *.def. Затем вы можете транслировать и собирать проект обычным образом. К сожалению, из-за недостатка места в нашей книге мы не сможем описать в деталях этот процесс, однако он не сложен и мы уверены, что вы справитесь с этим сами, точно также, как и с установкой среды разработки Borland C++ for OS/2.
Что же касается системы разработки IBM VisualAge C++, то мы подготовили mak-файл, с помощью которого вы сможете собрать проект из командного приглашения OS/2. Этот способ хотя и не слишком удобен по сравнению с использованием интегрированных систем разработки, позволит вам работать с компьютером, оснащенным небольшим объемом оперативной памяти или медленным процессором. Файл называется mywindow.mak (листинг 1.5).
Для трансляции приложения с помощью этого файла вы должны сделать каталог, содержащий исходные тексты приложения, текущим и затем запустить программу nmake, указав ей в качестве параметра имя файла mywindow.mak:
c:\os2prg\src\mywindow>nmake mywindow.mak
Листинг 1.5. Файл mywindow\mywindow.mak
PRJ = mywindow CC = icc /Ti /c /Ge /Gd- /Se /Re /ss /Gm+ LFLAGS = /NOFREE /NOE /NOD /ALIGN:16 /EXEPACK /M /BASE:0x10000 LINK = ILINK $(LFLAGS) LIBS = CPPOM30 + OS2386 HEADERS = $(PRJ).h ALL_OBJ = $(PRJ).obj
.SUFFIXES: .rc .res .obj .lst .c
.c.lst: $(CC) -Fc$*.lst -Fo$*.obj $*.c
.c.obj: $(CC) -Fo$*.obj $*.c
.rc.res: rc -r $*.rc
all: $(PRJ).exe
$(PRJ).l: $(PRJ).mak echo $(ALL_OBJ) > $(PRJ).l echo $(PRJ).exe >> $(PRJ).l echo $(PRJ).map >> $(PRJ).l echo $(LIBS) >> $(PRJ).l echo $(PRJ).def >> $(PRJ).l
$(PRJ).res: $(PRJ).rc $(PRJ).ico $(PRJ).h
$(PRJ).obj: $(PRJ).c $(HEADERS)
$(PRJ).exe: $(ALL_OBJ) $(PRJ).def $(PRJ).l $(PRJ).res $(LINK) @$(PRJ).l rc -p -x $(PRJ).res $(PRJ).exe