- •Реферат
- •Содержание
- •Введение
- •Базовые инструменты Linux Shell и Make
- •1.1 Скриптовый язык Shell
- •1.2 Утилита Make
- •2.Встраиваемые системы на базе Linux
- •3. Описание структуры пакета Buildroot
- •3.1 Переменные BuildPackage
- •Блоки define BuildPackage
- •4. Пример пакета Openwrt
- •Заключение
- •Список использованных источников
- •Пример package/bridge/Makefile
- •Шаблон сценария makefile
4. Пример пакета Openwrt
В практической части я создал пробный пакет Openwrt. Он состоит из одной тестовой программы который выводит на консоль текст сообщение.
Есть простая программа на языке C, hello.c
#include <stdio.h>
int main(){
printf("Hello world from Utils/hello package \r\n");
return(0);
}
В которой есть текст Hello World
Далее я Написал пакет Makefile который использует сценарий для самой сборки исходников
CFLAGS?=-O2
CFLAGS+=
SFLAGS:=--std=gnu99
WFLAGS:=-Wall -Werror -pedantic
LDFLAGS?=
BINARY:=hello
all: $(BINARY)
$(BINARY): *.c
$(CC) -I. $(CFLAGS) $(SFLAGS) $(WFLAGS) $(LDFLAGS) -o $@ $+
clean:
rm -f $(BINARY)
А затем написал Шаблон сценария для сборки пакета Makefile (Приложение 2 )
Заключение
Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела. Текст раздела.
Список использованных источников
Opennet: сайт. – URL: http://www.opennet.ru/docs/RUS/bash_scripting_guide/c118.html (дата обращения: 25.04.2013).
Make Материал из Википедии свободной энциклопедии : сайт. – URL: http://ru.wikipedia.org/wiki/Make(дата обращения: 3.05.2013).
Linux Виртуальная библиотека по-русски : сайт. – URL: http://rus-linux.net/nlib.php?name=/MyLDP/algol/gnu_make/gnu_make_3-79_russian_manual.html#SEC5(дата обращения: 3.05.2013).
Buildroot : сайт. – URL: http://ard01.nichost.ru/files/news/01072005/buildroot-rus_utf8.html#add_software (дата обращения: 10.05.2013).
OpenWrt Материал из Википедии свободной энциклопедии : сайт. – URL: http://ru.wikipedia.org/wiki/OpenWrt (дата обращения: 12.04.2013).
OpenWrt Wiki на русском языке: сайт. – URL: http://wiki.openwrt.org/about/start (дата обращения: 12.04.2013).
OpenWrt Wiki на русском языке: сайт. – URL: http://wiki.openwrt.org/ru/doc/devel/packages
Приложение 1
Пример package/bridge/Makefile
include $(TOPDIR)/rules.mk
PKG_NAME:=bridge
PKG_VERSION:=1.0.6
PKG_RELEASE:=1
PKG_BUILD_DIR:=$(BUILD_DIR)/bridge-utils-$(PKG_VERSION)
PKG_SOURCE:=bridge-utils-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@SF/bridge
PKG_MD5SUM:=9b7dc52656f5cbec846a7ba3299f73bd
PKG_CAT:=zcat
include $(INCLUDE_DIR)/package.mk
define Package/bridge
SECTION:=base
CATEGORY:=Network
DEFAULT:=y
TITLE:=Ethernet bridging configuration utility
#DESCRIPTION:=This variable is obsolete. use the Package/name/description
define instead!
URL:=http://bridge.sourceforge.net/
endef
define Package/bridge/description
Ethernet bridging configuration utility
Manage ethernet bridging; a way to connect networks together to
form a larger network.
endef
define Build/Configure
$(call Build/Configure/Default,--with-linux-headers=$(LINUX_DIR))
endef
define Package/bridge/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/brctl/brctl $(1)/usr/sbin/
endef
$(eval $(call BuildPackage,bridge))
Приложение 2
