openwrt添加自己的应用程序(SDK下编译模块)出现的问题

2023-11-08

openwrt 版本: 15.05(CC)
最近在openwrt里面想编写一个串口的读写程序,没想到会出现以下问题
1、编译的时候
以下为网友遇到的问题
Package helloworld is missing dependencies for the following libraries: libc.so.6  libpthread.so.0
缺少类库,然后其实我发现我的类库在系统里是存在的:
locate libc.so.6
结果:
/lib/i386-linux-gnu/libc.so.6
/lib/i386-linux-gnu/ libpthread.so.0
/lib64/libc.so.6
但是我的应用程序用到了 Libpthread,所以提示 少了2个依赖库。
按照网友的做法
第一步:
把/lib/i386-linux-gnu/libc.so.6  libpthread.so.0这2个文件拷贝到家目录下的openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib这里。
cp /lib/i386-linux-gnu/libc.so.6  ~/openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib
cp /lib/i386-linux-gnu/libpthread.so.0  ~/openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib
第二步:
在你写的代码文件夹下(我写的是个my_ipk)下的Makefile里

这里我并没有照着网友的做,因为我加了之后,拷贝到板子上opkg都装不上,如下所示:




增加:这一步我跳过

DEPENDS:=+libc +libpthread 

就是在:
define Package/my_ipk
SECTION:=utils 
CATEGORY:=Utilities 
TITLE:=My_ipk-- prints a snarky message 
DEPENDS:=+libc
endef
这个define下面。


第三步:也是在Makefile里增加:
define Package/my_ipk/install
$(INSTALL_DIR)  $(1)/bin
$(CP) /lib/i386-linux-gnu/libc.so.6 $(1)/bin
$(CP) /lib/i386-linux-gnu/libpthread.so.0 $(1)/bin
$(INSTALL_BIN)  $(PKG_BUILD_DIR)/my_ipk $(1)/bin/
endef
这里多了一行$(CP)的代码。


最后一步: 这一步我跳过
在/home/user/attitude/staging_dir/target-mips_r2_uClibc-0.9.33.2/pkginfo下的libc.provides文件里增加两行:
/lib/i386-linux-gnu/libc.so.6
libc.so.6

我只做了第一步和第三步,编译完后scp ./bin/ar71xx/packages/base/my_ipk_1_ar71xx.ipk  root@192.168.1.1: 拷贝到开发板,如果你的网络有问题,上篇文档里有说明,如果把此文件编进文件系统里,比较麻烦一点。

在开发板中输入 opkg install my_ipk_1_ar71xx.ipk 提示如下:


执行程序的时候出现的错误。缺少libthread.so.0这个库,这个库可不能随便从虚拟机里拷贝一个过来,放到/lib下,因为格式肯定不对,那我们就看看openwrt里有没有这个库,进入openwrt根目录,mk,mk就是make menuconfig啦,嫌太长,就自己alias啦。
搜索一下,发现一个可疑对象如下所示:
好,位置显示在Base system下,我们进入该选项找到
<*> libpthread.......................................... POSIX thread library 
选中之后推出保存,make V=99编译openwrt。
之后会在bin/ar71xx/packages/base/libpthread_0.9.33.2-1_ar71xx.ipk 出现。scp bin/ar71xx/packages/base/libpthread_0.9.33.2-1_ar71xx.ipk root@192.168.1.1:
执行以下操作
程序成功运行了。
本人也是刚刚接触openwrt,如有不对的地方,请多多指教。。。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

openwrt添加自己的应用程序(SDK下编译模块)出现的问题 的相关文章

  • DVWA靶场01-系统命令执行漏洞利用及防护(Low/Medium/Hight)

    目录 01 Low 01 1 任意文件读取 01 2 小马实现Getshell 01 2 1 获取网站路径 01 2 2 写入一句话木马 01 2 3 连接一句话木马 01 3 设置后门 02 Medium 03 Hight 04 impo
  • 低代码平台实现原理

    整个可视化搭建系统分为三部分 分别是配置页 setting 视图页 view 和 json schema 配置页生成 json schema 视图页消费 json schema 基本原理 通过json schema保存用户所编辑的内容并保存
  • 《大话脑影像》之:趣谈散点图与相关系数

    最近不少读者对高大上的机器学习 动态脑网络 曲面形态指标共变网络感到爱不起 针对于此 我们特别推出一些基本的做脑功能的概念讲解 希望大家一步一步来 年轻人 不要动不动想一步登天 识得唔识得啊 那今天我们就谈谈这个相关系数 说起相关系数 从字
  • 如何将一个List按照某一个字段进行分组,并且得到一个顺序的Map

    首先 我们这里有一个对象 Data public class Pcr private String target 组 private String sample private Double cq private Double avgCq
  • 固定资产管理系统如何简化流程

    对于企业而言 管理固定资产是一项重要的任务 而如何有效地进行报销则是固定资产管理的关键环节 为了解决这个问题 许多企业引入了固定资产管理系统 那么 这个系统究竟能如何简化流程呢 固定资产管理系统可以实现无纸化报销 通过这个系统 员工可以在任
  • 《深度学习500问》,川大优秀毕业生的诚意之作

    前端工程师掌握这18招 就能在浏览器里玩转深度学习 基于知识图谱的人机对话系统 公开课笔记 来呀 AI喊你斗地主 美团大脑 知识图谱的建模方法及其应用 公开课笔记 60天 4位诺奖得主 他们将这样改造区块链 程序员的江湖 务必掌握这些黑话
  • ECMAScript 2022 正式发布

    ECMAScript 2022 现已获得 ECMA International的批准通过 ECMAScript 是标准化的 JavaScript 语言 于 1997 年发布了第一版 现已发展成为世界上使用最广泛的通用编程语言之一 本 Ecm
  • level design : in pursuit of better levels 原文以及中文译本

    level design in pursuit of better levels 关卡设计 追求更好的关卡 推特关卡设计大佬Alex TychoBolt 分享了一份他归纳的游戏关卡设计基础知识文档 Level Design In Pursu
  • 2022护网日记,护网工作内容、护网事件、告警流量分析

    作者主页 士别三日wyx 作者简介 CSDN top100 阿里云博客专家 华为云享专家 网络安全领域优质创作者 2022护网日记 一 监控设备 二 工作内容 三 安全事件 1 失陷主机排查 2 后门网站修复 四 告警流量分析 1 信息泄露
  • 基于dmclock分布式限流策略

    结合Cepb自身的特点 较为合理的做法是将QoS机制直接嵌入每个OSD中来实现 dmclock基本原理 mclock算法 mClock基本原理主要包含以下两个方面 1 为客户端设置一套QoS模板 并在每个1 0请求中携带该QoS模板 2 服
  • 第五天系统变量没有path变量如何添加

    作为新手小白 在第一次安装Java的时候 竟然神不知鬼不觉地把系统变量里面的path变量删除了 以至于在运行程序总是出错 难受想哭 现在就把我血的教训分享出来 对于不小心删除的path变量怎么恢复 我碰到的path变量会有两种故障情况 1
  • BeanUtils使用方法

    BeanUtils类可以帮助我们copy值到类的属性中 也可以copy一个对象到另一个对象 java view plain copy UserEO user new UserEO String key userName String val
  • JAVA网络编程 ——基于TCP的Socket编程(1)——实现服务器端与客户端的实时对话

    第一篇文章 我先介绍以及记录一下我所学的知识点 总结了一下视频老师讲的东西 一 HTTP与Socket 1 HTTP 超文本传输协议 特点 客户端发送的请求需要服务器端每次来响应 在请求结束之后主动释放连接 从建立连接到关闭连接称为 一次连
  • openGL ES3.0 glGetShaderInfoLog函数详解

    前言 glGetShaderInfoLog函数官方文档地址 Name glGetShaderInfoLog Returns the information log for a shader object C Specification vo
  • 前端发送axios请求报错Request failed with status code 500解决方案

    1 报错如下 2 因为后端的api是自己使用node express搭建的后台 然后要求请求头的参数格式为application x www form urlencoded的参数格式 打开报错请求 发现自己的请求头参数格式没有错误 jwt的
  • 2017.08.04 通过openGL纹理在Unity中获取摄像机图像

    主要代码如下 IEnumerator Start Image left new Texture2D m videoWidth m videoHeight TextureFormat ARGB32 false 在Unity中创建2D纹理 Im
  • 【SCL】博图SCL编程语言(1)

    初识博图scl语言 文章目录 目录 一 scl语言简介 1 介绍 2 相关问题 3 scl语言的编写环境 二 表达式和运算符 1 算术表达式 1 介绍 2 算术表达式使用 3 例题 2 关系表达式 1 介绍 2 使用 3 逻辑表达式 1 取
  • eclipse servers没有tomcat_Tomcat服务器入门详细教程

    前言 不是井里没有水 而是你挖的不够深 不是成功来的慢 而是你努力的不够狠 你好 我是梦阳辰 下面和我一起学习起来吧 文章目录 01 Tomcat概述 02 Tomcat服务器 03 使用Eclipse配置Tomcat服务器和新建项目 04

随机推荐

  • 关于2022年度深圳市重点实验室组建拟资助项目的公示

    各有关单位 根据 深圳市科技计划项目管理办法 有关规定 市科技创新委员会拟对2022年度深圳市重点实验室组建相关项目进行资助 现予公示 向社会征求意见 任何单位和个人对公布的项目持有异议的 请在公布之日起10天内以书面形式 注明通讯地址和联
  • 推荐系统学习笔记-冷启动

    简介 推荐系统的主要目标是将大量的标的物推荐给可能喜欢的海量用户 这里涉及到标的物和用户两类对象 任何互联网推荐产品 标的物和用户都是不断增长变化的 所以一定会频繁面对新标的物和新用户 推荐系统冷启动问题指的就是对于新注册的用户或者新入库的
  • 「Hive」json数据解析get_json_object函数的用法

    应用场景 提取以json字符串的方式存储的数据 用法 get json object expr path expr 包含格式正确的 JSON 的 STRING 表达式 或字段名 path 包含格式正确的 JSON 路径的 STRING 文本
  • Datawhale 李宏毅机器学习 Task1

    目录 一 简单理解机器学习 二 机器学习基本步骤 三 机器学习相关步骤 1 监督学习 2 半监督学习 3 迁移学习 4 无监督学习 5 监督学习中的结构化学习 6 强化学习 四 学习总结 一 简单理解机器学习 就像是生物本能 比如河狸修水坝
  • Jmeter-验证码(图片base64加密+uuid)

    适用于验证码为img 图片base64加密 标识 uuid 的情况 1 先下载OcrServer图片识别工具 2 添加验证码获取的http请求 3 通过json提取器获取img和uuid 4 调用http请求获取OcrServer识别的结果
  • ovirt超整合部署记录

    网络磁盘设置 root ovirt106 ping www 163 com PING z163picipv6 v bsgslb cn 221 233 240 109 56 84 bytes of data 64 bytes from 221
  • 【前端】neo4j导出json数据可视化

    占位贴 提醒自己有时间了把源码和思路提供一下
  • ArcgisOpr CXX0030

    这个错误我是找了好多天才找到了 AE ArcgisEngine 在用VC环境进行开发时 对license的初始化失败 并在VC的编译输出窗口中提示Could not bind to a valid ArcGIS installation 是
  • UnitTest单元测试框架解析【实用篇】

    UnitTest是展开自动化测试的基础 这个框架很重要 首先我们先自己写一个测试类 1 被测试类 Widthget py coding utf 8class Widthget def init self size 10 10 self si
  • 常用的正则表达式总结(慢慢增加中。。。)

    1 0 100 内的数字 不包含0 100 排除0 0 0 00 保留三位小数 1 9 1 2 d 1 3 0 0 9 1 2 1 9 2 0 100 内的数字包含0 100 保留三位小数 d 1 2 d 1 3 100
  • Java将jar包打成exe包

    如何获取jar包 1 如果是maven项目 2 如果是SpringBoot项目 添加maven插件 直接使用maven插件进行打包 Jar打包成exe 准备 相关的jar Exe4j应用程序 地址 https www ej technolo
  • 第三届Python数据分析职业技能比赛A题

    第三届Python数据分析职业技能比赛A题 Hello World 赛题 竞赛背景 字段说明 考核目标 任务 任务一 数据预处理 任务二 数据可视化 任务三 数据分析 任务一思路 1 2 1 3 任务二思路 2 1 2 2 2 3 任务三思
  • 禅道程序员的10条原则

    在一个阴雨的早上 我坐在桌子旁 开始想如何才能高效的工作 在我成为一个自由职业者之前 我有很长一段时间都很努力工作 但收效甚微 我在2006开始接触禅学 我马上意识到 古代的禅宗大师们几百年前早就已经知道现今的程序员应该如何工作 虽然我很讨
  • 如何通过官方渠道下载任意版本的Spring相关的jar包

    1 进入官网http spring io 2 第二步 点击PROJECTS 3 点击SPRING FRAMEWORK 4 点击上一步中GitHub图标 进入下面的页面 第五步 把第四步出现的页面往下拉 找到 Spring Framework
  • python Matplotlib画图之调整字体大小的示例

    本文来源于公众号 csdn2299 喜欢可以关注公众号 程序员学府 本篇文章主要介绍了python Matplotlib画图之调整字体大小的示例 小编觉得挺不错的 现在分享给大家 也给大家做个参考 一起跟随小编过来看看吧 一张字体调整好的示
  • 不能在slot上绑定和触发事件

    在 slot 上进行事件的监听和分发 这是不可能的 组件的 slot 由调用它的父组件提供 这意味着所有事件都应该与父组件相关联 尝试去倾听这些变化意味着你的父子组件是紧密耦合的 可以使用 parent 来操作 div div
  • 5.1广度优先遍历的递归与迭代实现;

    队列先进先出的性质 符合 广度优先遍历时 一层一层的遍历逻辑 lc102 102 二叉树的层序遍历 107 二叉树的层次遍历II 199 二叉树的右视图 637 二叉树的层平均值 429 N叉树的层序遍历 515 在每个树行中找最大值 11
  • 谭铁牛:人工智能 找风口不如找关口

    不过我们不能光打打嘴炮 如何克服困难和挑战 让人工智能帮到你的工作 你的事业呢 让我们将李开复的演讲内容 再结合一个实例 来给大家解释一下 现在 假设你是一个程序员 虽然哥也是一媒体人 但黑起自己的行业来是丝毫不会手软的 假设你现在是一家媒
  • Python库

    库名称简介 Chardet字符编码探测器 可以自动检测文本 网页 xml的编码 colorama主要用来给文本添加各种颜色 并且非常简单易用 Prettytable主要用于在终端或浏览器端构建格式化的输出 difflib Python 标准
  • openwrt添加自己的应用程序(SDK下编译模块)出现的问题

    openwrt 版本 15 05 CC 最近在openwrt里面想编写一个串口的读写程序 没想到会出现以下问题 1 编译的时候 以下为网友遇到的问题 Package helloworld is missing dependencies fo