Вы находитесь на странице: 1из 5

Федеральное агентство по образованию

Государственное образовательное
учреждение высшего профессионального образования
«ТОМСКИЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»

Факультет автоматики и вычислительной техники


Кафедра ВТ

ЛАБОРАТОРНАЯ РАБОТА №2

по дисциплине
«Операционные системы»

Выполнил:
Студент группы 8В51 _________ М. С. Гриценко

Руководитель:
_________ А. В. Замятин

Томск – 2008
2
Цель: ознакомиться с техникой компиляции программ на языке програм-
мирования C (C++) в среде ОС семейства Unix, а также получить практические
навыки использования утилиты GNU Make для сборки проекта.
Задание: изучить особенности работы с утилитой Make при создании проекта
на языке C (C++) в ОС Unix, а также получить практические навыки использова-
ния утилиты GNU Make при создании и сборке проекта.

Ход работы
1. Ознакомились с теоретическим материалом
2. main.cpp func1.h
#include <iostream.h> int y1(int x);
#include “func1.h” func2.h
#include “func2.h” int y2(int x);
int main(int argc, char *argv[]) func1.cpp
{ int y1(int x){
int n; return x*x;
cin>>n; }
cout<<”func1:”<<y1(n)<<endl; func2.cpp
cout<<”func2:”<<y2(n)<<endl; int y2(int x){
return 0; return x*x*x;
} }
3. makefile
eEdit:main.o func1.o func2.o
g++ main.o func1.o func2.o –o eEdit
main.o:main.cpp
g++ -c main.cpp
func1.o:func1.cpp
g++ -c func1.cpp
func2.o:func2.cpp
g++ -c func2.cpp
3
4. Удачно скомпилировалось.
5. До изменения func2.cpp:
• func1.o 23:28
• func2.o 23:28
• main.o 23:28.
• eEdit 23:28
После изменения func2.cpp:
• func1.o 23:28
• func2.o 23:30
• main.o 23:28
• eEdit 23:30
6. После выполнения Make файла (рис.1) и (рис. 2):
4

Рис. 1. Содержимое каталогов


5
Рис. 2. Содержимое главного каталога
7. Текст Make файла (рис. 3.)

Рис. 3. Текст Make-файла

Выводы:
В ходе проделанной лабораторной работы ознакомились с техникой компи-
ляции программ на языке программирования C (C++) в среде ОС семейства Unix.
Заметили, что компиляция проектов существенно отличается от компиляции в сре-
де ОС Windows, и представляет собой целую технологию для компиляции
больших проектов.

Оценить