OpenWrt目录结构

2023-11-06

        在未编译前,OpenWrt目录如下:

1.       package

此目录主要存放OpenWrt的软件包,我们自己添加的应用层代码都应存放于此文件夹,代码包存放于此文件夹并编写相应的Makefile后,在编译过程中OpenWrt会自主识别并编译,可以看看package下面有哪些目录:


package下的目录会根据配置的不同而不同,其中基本都是openwrt的一些应用工具包,比如utils就是一引起工具集,ls,ssh等工具的源码都在此目录下

 

2.       target

target目录下主要是和平台有关的代码,最主要的是linux文件夹


我们可以看到每一个平台都对应一个文件夹,我们通过makemenuconfig来选择平台和芯片时就是对应的此文件夹,可以进去ramips看下


可以看到里面有多种芯片型号,此中的image是最终生成固件时会调用到的,在这里可以对我们的固件做部分定制,patches是一些补丁包。base-files中的目录和linux目录相对应,很多地方都有这个文件夹。

 

3. tools

此目录下是一些工具集,通过名字应该都可以看出其具体功能,不多介绍

 

4. docs

文档存放目录,和openwrt有关的一些文档

 

5. include

顶层通用makefile,其他makefile中包含的makefile都可以在其中找到

 

6. scripts

脚本工具,包括一些用shell,perl,python编写的通用工具

 

7. toolchain

交叉编译工具链相关

 

 

在编译完成后,主目录结构如下:

可以发现多了几个文件夹:dl,tmp,logs,staging_dir,build_dir。其中logs目录为编译过程中输出的一些日志,编译出问题时可以查看此目录,tmp为临时文件夹

 

8. dl

dl为源代码下载目录,在编译过程中下载的源代码包都会保存在此文件夹下

 

9. staging_dir

这是一个比较重要的目录,此目录保存工具、内核等所有代码的编译结果,其内容如下:

host文件夹是和平台无关的一些生成物。

target-mipsel_24kec+dsp_uClibc-0.9.33.2是根据我们所选的平台和芯片产生的,其就是对应平台的编译结果。

toolchain-mipsel_24kec+dsp_gcc-4.8-linaro_uClibc-0.9.33.2是根据我们所选的平台生成的交叉编译工具链及库文件。

9.1 我们先看下toolchain-mipsel...目录下的内容


其中的bin就是我们生成的交叉编译工具链

我们可以看到其中有gcc,g++,ar等工具链,lib和usr/lib是另外两个比较重要的目录,交叉编译过程中需要的库都保存在这两个目录中,交叉编译时我们需指定这两个目录。include是一些头文件

 

9.2 target-mipsel_24kec+dsp_uClibc-0.9.33.2 这是根据我们平台生成的文件,可以看到有如下内容:


include lib usr都是和平台有关的一些头文件和库,在我们所选平台其为空。

这个目录下最重要的目录是root-ramips,其内容:

这个目录是否很熟悉,和我们在板子上看到的目录一模一样,我们的固件就是通过打包这个文件夹生成的,固件解压出来就是它

 

10. build_dir

这是一个中间文件夹,所有代码都会拷到其中编译,代码在编译之前会拷贝一份到此目录中,为什么要拷贝呢?一个原因就是在-编译过程中OpenWrt可能会对其中一些代码和makefile作改动,这里是为了安全起见,对副本进行编译。

其目录内容和staging_dir一模一样,staging_dir就是build_dir中代码的编译结果。

host    和平台无关的一些工具、库代码

toolchain-mipsel_24kec...  工具链源码

target-mipsel_24kec+dsp_uClibc-0.9.33.2 和平台有关的代码,其中是一些代码包,packge中的代码包很多都会拷贝到此目录编译,我们自己添加的代码包也应拷贝至此目录

 

不足之处请指正,谢谢!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

OpenWrt目录结构 的相关文章

  • openwrt opkg错误的问题解决办法之一

    解决方法 echo nameserver 114 114 114 114 gt tmp resolv conf rm f var lock opkg lock opkg update
  • ZeroTierr的moon云服务器搭建和使用

    搭建moon 本质上是在云服务器上建立一个moon服务器 也加入zerotier的Network ID 服务器记录请求路径来做类似于DNS的解析 让设备之间p2p直连 问题是ZeroTier One本身的服务器都在国外访问速度很慢 可以通过
  • OpenWrt一些小问题的解决方法

    OpenWrt中文文档并不完善 国内论坛也不太照顾新人 有时遇到问题无从下手 这里整理一些常见错误提示和解决方法 我也是新手整理的不全有问题可以在评论里提出 satisfy dependencies for Cannot satisfy t
  • 解决GO语言编译程序在openwrt(mipsle架构)上运行提示Illegal instruction问题

    RT 最近在研究openwrt mipsle架构 上运行go语言编译出来的程序 一运行就报 Illegal instruction 这样的错误 百度和Google搜索了一遍 得出两种解决方案 PS 更新一遍 当时写这个文档的时候没有发现Go
  • OpenWrt系统配置UCI

    UCI简介 UCI Unified Configuration Interface 是 Openwrt 中的统一配置接口 官方文档参考 每一个程序的配置文件都保存在 etc config 目录 可以通过文本编辑器 uci 一个可执行程序 以
  • 从零开始学习OpenWrt完美教程

    Cisco Linksys在2003年发布了WRT54G这款无线路由器 同年有人发现它的OS是基于Linux的 然而Linux是基于GPL许可证发布的 按照该许可证Cisco应该把WRT54G 的OS的源代码公开 2003年3月 Cisco
  • 基于openwrt,aria2下载器安装与配置

    迅雷下载不好用 所以用这个下载器aria2 需要安装软件 在可用软件列表中安装aria2和luci app aria2 安装完后有可能需要重启路由器 需要注意的问题 1 aria2只是一个下载工具 并没有图形界面 2 文件下载的位置 在ar
  • 【硬创邦】跟hoowa学做智能路由(七):路由联网

    2014 05 16 17 32 原创 孙冰 1条评论 这一章hoowa将向各位介绍Openwrt下基本路由功能的配置方法 通过本章学习大家将了解如何设置OpenWRT来使路由连接网络 讲解将通过命令行模式 在系列教程中 hoowa不会教大
  • 基于openwrt平台搭建局域网技术验证之二

    1 测试目的 验证l2tp服务器模式的可行性 提供vpn l2tp模式的服务器功能 供客户端连接访问内网 2 参考资料 参考连接1 https www jianshu com p ccf8f2cca70e 参考连接2 https openw
  • 【openwrt学习笔记】dnsmasq源码阅读

    目录 一 DHCP Dynamic Host Configuration Protocol 1 1 前置知识 1 2 参考链接 1 3 IP地址分配代码分析 rfc2131 c dhcp common c dhcp c 1 4 几个小问题
  • openwrt中计划任务的设置

    寝室的供网规则为周一到周五零点断网 六点开网 双休日通宵供网 故设置一套计划任务提高路由器使用效率 crontab命令常见于Unix和类Unix的操作系统之中 用于设置周期性被执行的指令 操作符号 在一个区域里填写多个数值的方法 逗号 分开
  • openwrt上opkg更新报错"opkg_download: Failed to download ............."

    开始搞op的时候 看到op竟然可以直接安装一些插件 激动坏了 因为这东西对嵌入式的小系统来说简直不敢想 但是op就支持了 就是这么任性 好不容易编译了固件 按照网上的教程 telnet进去 首先opkg update 结果没有想象中的华丽更
  • OpenWrt后台管理启用https-OpenSSL

    OpenWrt 默认使用http 访问管理后台 这样不安全 推荐修改为 https 访问 加密数据传输 本文介绍配置步骤 1 卸载旧的ssl软件包 root OpenWrt opkg remove luci ssl px5g px5g mb
  • OpenWRT添加模块(一)Makefile和Config.in

    第一次接触到openwrt 真是被毁三观啊 不要说makefile 连源代码在哪里都找不到 知道嵌入式系统水深 没想到迈出第一步就没过了脖子 好在旁边有人指点 直接在芯片厂商提供的既有代码上做二次开发 项目进展倒也完全满足了前期计划的目标
  • 1-OpenWrt编译过程-2

    前言 接触 op 已达四年 今年开始梳理整体所学 具体还参考了佐大的视频 对 op 缺乏系统知识的可以尝试 总体而言官方文档和源码是最好的教程 文章目录 编译OpenWrt 概述 1 更新安装所有可选的软件包 2 编译设置 make men
  • openwrt下使用SDK编译ipk包遇到Package hiOpenwrt is missing dependencies for the following libraries: libc.so.

    openwrt下使用SDK编译ipk包遇到Package hiOpenwrt is missing dependencies for the following libraries libc so 6 问题 缺少 libc so 6 库 但
  • openwrt 缺少 libc.so.6 libm.so.6 libpthread.so.0

    在开发openwrt时 编译内核的时候 自己写的代码在openwrt 编译报错 提示缺少依赖库文件 Package Gateway Auto is missing dependencies for the following librari
  • openwrt恢复出厂设置有两种方法

    1 输入以下指令 firstboot mtd r erase rootfs data 2 输入以下指令 mount root firstboot reboot f
  • 刷新完固件后opkg update报错的解决方法

    刷新完固件后opkg update报错的解决方法 一 更改设备ip 当你使用lan口接入局域网后 如果你ping不通局域网上的其他设备ip 那么需要更改ip vim etc config network 修改lan口的ip为局域网下同一网段
  • 为什么在 Makefile 中安装文件时 $(INSTALL_BIN) 和 $(INSTALL_DATA) 总是删除软链接

    在 OpenWrt 包 Makefile 的安装部分 以下代码将从 lib 文件中删除软链接并将实例复制到 1 在构建 编译部分 我们在 PKG BUILD DIR 下构建了 3 个库 PKG BUILD DIR libapi so gt

随机推荐

  • 【图像处理】怎么让图片背景变透明?怎么改变图片中线条的颜色?在线PS软件

    文章目录 前言 一 打开图 二 背景透明处理 三 改变线条颜色 总结 前言 我们处理图片将会使用到PS软件 如果安装了PS那直接打开使用 如果没有安装PS 可使用在线PS软件 https www uupoop com 一 打开图 第一步 从
  • b站up主:空狐公子 --矩阵求导(分母布局)课程笔记

    一 写在前面 最近在看图像正则化相关文章的时候 常常被矩阵求导弄得一头雾水 在B站发现一个宝藏up主空狐公子 非常的硬核 矩阵求导讲解的非常好 逻辑清楚 层层递进 很有帮助 本文做一个简单的记录 方便以后查阅回顾 求大家三连支持up 传送门
  • 我玩某宝新模式2个月收λ15万,你觉得过气的行业,真的很赚钱!

    如果有人问 有什么事 比穷更难受 我的回答一定是 马上过年了 我还在喝西北风 我的朋友先暴富了 这段时间 我就被闺蜜美美狠狠扎了心 以前她和我一样是个普通上班族 去年做微商囤了大几万的货卖不出去 老公气得要和她离婚 整日垂头丧气 谁知年底了
  • Python ceil() 函数

    描述 ceil 函数返回数字的上入整数 语法 以下是 ceil 方法的语法 import math math ceil x 注意 ceil 是不能直接访问的 需要导入 math 模块 通过静态对象调用该方法 参数 x 数值表达式 返回值 函
  • 【智能无线小车系列八】在树莓派上使用USB摄像头

    材料准备 1 树莓派 2 AS 4WD小车 3 WebCam 4 小米移动电源 5 TP LINK 高增益150MUSB无线网卡 操作流程 1 将WebCam插上树莓派后 首先要确认树莓派是否支持该设备 输入 pi raspberrypi
  • 十五、Webpack打包图片-js-Vue、Label命令、resolve模块解析

    一 webpack打包图片 1 加载图片案例准备 为了演示我们项目中可以加载图片 我们需要在项目中使用图片 比较常见的使用图片的方式是两种 img元素 设置src属性 其他元素 比如div 设置background image的css属性
  • cocos3.10版本IphoneX 1分钟适配方案

    1 第一部找到 LaunchScreen storyboard 还有 LaunchScreenBackground png 拷贝到项目中 我的是放在 过场加载图片那里 cocos里面有 2 项目的 BulidPhases 找到 CopyBu
  • 电脑强制关机两次后报错自动修复你的电脑未正确启动

    强制关机两次后报错自动修复你的电脑未正确启动 因为电脑太卡就强制关机了 开机之后没有等全部加载完 又觉得卡强制关机 再次打卡后显示正在准备自动修复 之后就自动修复你的电脑未正确启动 当时很慌 自己的毕设还有毕业论文都在电脑里 虽然没有放到系
  • 队列的实现(Java)

    Java数据结构学习笔记 一 队列 数组实现 核心逻辑代码 class ArrayQueue private int maxSize 0 private int front private int rear private int arr
  • [C语言]进一步的来了解指针(多多多图详解)

    本文章进一步的来讲解指针 如果是第一次接触指针的可以先看一下对于指针的初步理解 C语言 初步的来了解一下指针 多图详解 HY PIGIE的博客 CSDN博客 目录 1 字符指针 2 指针数组 2 1指针数组 char 类型举例说明 2 2指
  • 对接网络摄像头——使用RTSP协议进行取流

    使用RTSP协议对大华网络摄像头进行取流 目标 具体操作 目标 用电脑或者带有网口的移动设备将大华网络摄像头的视频流取出来 具体操作 给摄像头供电 用网线将摄像头与笔记本连接起来 用大华的工具管家设置IPC的IP地址 使摄像头与笔记本在同一
  • HTML+JavaScript实现在浏览器里自由画线1.0

    gt gt
  • 参考文献引用网页

    格式 序号 主要责任者 电子文献题名 电子文献出处 电子文献及载体类型标识 或可获得地址 发表或更新日期 引用日期 举例 16 王明亮 关于中国学术期刊标准化数据库系统工程的进展 EB OL http www cajcd edu cn pu
  • torch用GPU训练

    需要手动将数据和模型都放到GPU中 法一 是否用GPU训练 train on gpu torch cuda is available device torch device cuda 0 if torch cuda is available
  • onvif抓包分析(三)

    GetProfile POST onvif Media HTTP 1 1 Content Type application soap xml charset utf 8 action http www onvif org ver10 med
  • vue-cli-service原理研究,以及其与webpack-dev-service的区别

  • eNsp下载地址(官网)

    http support huawei com enterprise softdownload action idAbsPath fixnode01 7919710 9856717 7923123 9858914 9017384 pid 9
  • 八大排序算法时间空间复杂度分析

    作者 番茄焖鸡蛋 链接 https www nowcoder com discuss 200097 type 1 来源 牛客网 1 冒泡排序不管序列是怎样 都是要比较n n 1 2 次的 最好 最坏 平均时间复杂度都为O n 需要一个临时变
  • 前端node该怎么接受ajax送过来的数据并且保存至数据库呢?

    如题 百度半圈也没查到有用的信息 或者html不用ajax也行 但是要把html里几个var 声明的变量传到nodejs并且保存至数据库就好
  • OpenWrt目录结构

    在未编译前 OpenWrt目录如下 1 package 此目录主要存放OpenWrt的软件包 我们自己添加的应用层代码都应存放于此文件夹 代码包存放于此文件夹并编写相应的Makefile后 在编译过程中OpenWrt会自主识别并编译 可以看