---
title: "Основы *nix кодинга. Часть 1."
description: "Основы linux кодинга. Часть 1.Привет всем.Цель данной статьи рассказать читателям об основах linux п..."
author: "huzrus"
published: "2013-02-03T09:30:14+00:00"
modified: "2013-02-03T09:30:14+00:00"
locale: "ru"
canonical_url: "https://yvision.kz/post/osnovy-nix-kodinga-chast-1-318272"
markdown_url: "https://yvision.kz/post/osnovy-nix-kodinga-chast-1-318272/markdown"
site_name: "Yvision.kz"
---

# Основы *nix кодинга. Часть 1.

> Основы linux кодинга. Часть 1.Привет всем.Цель данной статьи рассказать читателям об основах linux п...

Основы linux кодинга. Часть 1.Привет всем.Цель данной статьи рассказать читателям об основах linux программирования с помощью системных вызовов. В качестве компилятора будем использовать gcc, которые входит в поставку большинства дистрибутивов. Еще нам понадобится makeИнструментыПеред тем как начать программировать, стоит разобрать, что нам поможет в этом.Для начала компилятор gcc(GNU project C Compiler):Пример простейшего использования:БBr> $gcc /proga.c -o /prog или так:$gcc -o /prog /proga.cКлюч -o указываем имя и путь к будущему бинарникуЕсли в исходном тексте есть ошибки, то умный компилятор укажет на них.Маны:http://www.linuxcenter.ru/lib/books/linuxdev/linuxdev1.phtmlhttp://skif.bas-net.by/bsuir/prog_in_linux/node3.htmlMake - программа может состоять из множества файлов, которые нужно как то собрать в один. Если файлов мало то можно собрать использую только gcc, но файлов может быть очень много. Именно для таких случаев и применяем сборщик Make. Для ее работы необходимо использовать makefile - специальные файлы со сценарием сборки. Что бы лучше понять эти сценарии давайте попробуем собрать программу, состоящую из двух частей с помощью gcc:У нас есть файл main.c и modul.c: $gcc - -c main.c $gcc - -c modul.c Тут мы указали ключ -c, он означает, что нужно собрать объектный файл, это еще не является полноценной программой, ее мы соберем дальше: $ gcc -o programm main.o modul.c Теперь мы собрали бинарник из двух файлов.Итак, вернемся к make, как я уже говорил файлов для сборки может быть очень много, поэтому используем makefile. Попробуем сделать его самим: hello: main.o programm.o gcc -o programm main.o modul.o

main.o: main.c gcc -c main.c

modul.o: modul.c gcc -c modul.c

clean: rm -f *.o programm

Думаю все ясно. Мы выполняем почти те же действия, что и выше, но уже автоматически. В разделе Clean мы отчищаем директорию от временных файлов. Да, и не забываем про знаки табуляции, они очень важны Вот мануал для самостоятельного изученияhttp://www.linuxrsp.ru/docs/gm.htmlТянуть не будем, и перейдем к делу.Для начала определимся, что такое системный вызов:Системный вызов это обращение, какой либо прикладной программы к ядру ОС, для выполнения какой либо операции.Первым, как думаю самым несложным, мы разберем работу с файлами.

 

**[Уроки для хакеров и программистов](http://itblogs.org/)**

---

Source: [https://yvision.kz/post/osnovy-nix-kodinga-chast-1-318272](https://yvision.kz/post/osnovy-nix-kodinga-chast-1-318272)