OpenWrt compiling and downloading of open source router under embedded Linux

Source: Internet
Author: User
Tags git clone

*************************************************************************************************************** ************
Easywave Time: 2014.10.26

Category: Linux applications-Open source router openwrt compilation and download statement: reproduced, please keep the link

Note: If there is an error, please correct me. These are the journal articles I studied ...

*************************************************************************************************************** ************

One: Open source router OpenWrt introduction and Features

OpenWrt is a highly modular, highly automated embedded Linux system with strong network components and extensibility, often used in industrial control devices, telephones, small robots, smart homes, routers, and VoIP devices. It also provides more than 100 compiled software, and the number is increasing, while the OpenWrt SDK simplifies the process of developing software.
Unlike many other distributions for routers, OpenWrt is a zero-based, fully-functional, easy-to-modify router operating system. In fact, this means that you can use the features you want without adding to the rest, while the Linux kernel that support these features are much newer than most distributions.

For developers, OPENWRT is a framework for building applications without having to build a complete firmware to support it, which means that for users, it has the ability to fully customize and use the device in a way that has never been done before.


Two: Open source router openwrt website and download

Currently the latest version of the open source router OpenWrt is: OpenWrt (Barrier breaker) 14.07, the current major updates and improvements are as follows:

Major improvements after the RC3

    • Various ath9k related fixes
    • A few board related fixes
    • Fixes for packages depdending on Curl
    • Per feed Download folders
Major improvements after the RC2
    • NAT & Firewall Throughput improvements
    • Security updates for OpenSSL & Polarssl
    • Minor fixes in DHCP & DHCPv6 handling
    • Configuration Support for GRE tunnels
    • Various Other fixes
      Major improvements after the RC1

    • Fix a long standing ath9k deadlock bug
    • All feeds is now built
    • Image Builder now works and RC2 contains all board specific images
    • Various board/stability fixes
    • Highlights since Attitude Adjustment
    • Default Configuration and images
      Linux kernel update to version 3.10

    • Procd:new PreInit, Init, HotPlug and Event system written in C

Native IPV6 Support

    • RA & DHCPV6+PD Client and server
    • Local prefix allocation & source-restricted routes (multihoming)
File system Improvements
    • Added support for Sysupgrade on Nand-flash
    • Added Support for filesystem snapshot and rollback
    • Rewritten mounting system in C for ROOTFS and block devices
      UCI Configuration Improvements

    • Support for testing configuration and rollback to working
    • Last working state
    • Unified change trigger system to restart services On-demand
    • Added a data validation layer
      Network improvements

    • NETIFD now handles setup and configuration reload of wireless interfaces
    • Added reworked event support Obsoleting network hotplug-scripts
    • Added support for dynamic firewall rules and zones
    • Added support for transparent multicast to unicast translation for bridges
    • Various other fixes and improvements
      Other notable SDKs and other important improvements
      Extended IPV6 Support

    • Added Ds-lite support and improved 6to4, 6IN4 and 6rd-support
    • Experimental support for lightweight 4OVER6, MAP-E and Map-t
    • Draft-support for self-managing home networks (HNCP)
    • Rpcd:new JSONRPC over http-frontend for remote access to Ubus
    • Mdns:new Lightweight MDNs Daemon (work in progress)
    • Initial support for the MUSL C standard library
    • Support for qmi-based 3g/4g modems
    • Support for DNSSEC validation
    • Added architecture for package signing and SHA256 hashing
OPENWRT Official website: openwrt.org, as follows:


OpenWRT Development URL: dev.openwrt.org, as follows:


Part of the red circle, is to tell us how to go to the next OpenWrt code, click to enter, you can see GIT and svn two ways to download, but I choose git way to download. As shown below:


In the blue Circle part of the version that is now developing, and the red circle part of the rlease version, specifically want to download that version, look at their own ideas, but I suggest is to download the red circle part, before using the git command to download, you need to ensure that your machine is installed Git-core , if not, install the Git tool with sudo apt-get install Git-core. After installing the GIT tools, use the command:git clone git://git.openwrt.org/14.07/openwrt.git download, you must ensure that the network has been unblocked during the download. The basic structure of the OpenWrt directory after download is as follows:


After that, you need to follow the command:./scripts/feeds updata-a to update the OPENWRT source package as follows:


After the update, you need to use the command:./scripts/feeds install-a to download the update package as follows:


It is important to note that this time does not download openwrt any source code, but the need to go through the make command to download the OPENWRT project required by the source code, it is important to note oh, this is why the speed of compilation is very slow root cause. There is a readme file in the OpenWrt project, some caveats need to be looked at, as shown below:


It is clear that the first need to install some necessary tools and third-party libraries, such as: GCC, binutils, bzip2, Flex, Python, Perl, make, Find, grep, diff, Unzip, gawk, getopt, Sub Version, Libz-dev and libc headers. After installing the tools and the three-party library, set the default profile with the Make Defconfig command and then modify and configure the configuration required for your project on the basis of this configuration file. The following configuration can be used: make Menuconfig to configure and modify, this is the same as the Linux configuration menu, of course, there are many configuration items, it takes a little time to get familiar with, at present I am also familiar with, can not talk too much of things.


III: Compilation of Open source OpenWrt

The previous detailed introduction of how to download OpenWrt, this section simply explains how to compile, after the compile process error, how to view the error message, in general, use the make command to compile the code, and use make v=s to compile and view the wrong information. As shown below:


The process of compiling will be very long, this is because in the process of compiling, will download the related source Tarball, the general third-party library is placed in the DL directory, and the others will be placed in the Toolchain directory, as follows:



IV: Summary of Open source OpenWrt

Be very patient in the process of compiling and downloading, because sometimes the network is not very good, you need to find out where it caused the stop and so on.


Embedded Linux Open source router openwrt compile and download

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.