<commit_before>---
layout: post
title:  OpenWrt 学习笔记 (一) 了解OpenWrt
date:	17 Mar 2017 14:57:41 +0800
categories: Openwrt
tags: Openwrt
---

本文是OpenWrt学习笔记第一篇，通过[OpenWrt's build system - About](https://wiki.openwrt.org/about/toolchain)内容来了解OpenWrt系统。

首先来看OpenWrt官网上的基本介绍：

> The OpenWrt build system is a set of Makefiles and patches that allows users to easily generate both a cross-compilation toolchain and a root filesystem for embedded systems. The cross-compilation toolchain uses musl, a tiny C standard library.

由此可见，OpenWrt是一套由许多Makefiles和Patches组成的构建系统，让用户可以轻易的生成一套跨平台编译（交叉编译）的工具链以及一个用于嵌入式设备的根文件系统。

这里说到交叉编译工具链用的是musl C标准库，可能是现在的新版本已经切换到musl，我以前用的版本使用的是uClibc库。

## 编译工具链

编译工具链是一套用于针对你的系统编译源代码的工具集合，包括：<commit_msg>post: adjust a title charactor in post<commit_after>---
layout: post
title:  OpenWrt学习笔记（一）了解OpenWrt
date:	17 Mar 2017 14:57:41 +0800
categories: Openwrt
tags: Openwrt
---

本文是OpenWrt学习笔记第一篇，通过[OpenWrt's build system - About](https://wiki.openwrt.org/about/toolchain)内容来了解OpenWrt系统。

首先来看OpenWrt官网上的基本介绍：

> The OpenWrt build system is a set of Makefiles and patches that allows users to easily generate both a cross-compilation toolchain and a root filesystem for embedded systems. The cross-compilation toolchain uses musl, a tiny C standard library.

由此可见，OpenWrt是一套由许多Makefiles和Patches组成的构建系统，让用户可以轻易的生成一套跨平台编译（交叉编译）的工具链以及一个用于嵌入式设备的根文件系统。

这里说到交叉编译工具链用的是musl C标准库，可能是现在的新版本已经切换到musl，我以前用的版本使用的是uClibc库。

## 编译工具链

编译工具链是一套用于针对你的系统编译源代码的工具集合，包括：
{'fraction_non_alphanumeric': 0.07259158751696065, 'fraction_numerical': 0.021709633649932156, 'mean_word_length': 6.682291666666667, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4256659', 'n_tokens_mistral': 761, 'n_tokens_neox': 864, 'n_words': 134}