嵌入式移植
文章平均质量分 57
专注分享嵌入式RISC soc 移植过程的点滴经验
CH_Qing
尚善若水,水善利万物,而不争!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Configure ISSUE LIST
1. configure: cannot find install-sh, install.sh or shtoolIf the following error is encountered during ./configure:configure: error: cannot find install-sh, install.sh, or shtool in build "."/buildRun转载 2017-03-09 16:49:46 · 921 阅读 · 0 评论 -
systemd详解 (二)
关于Systemd 的详细描述,请参考wiki:https://en.wikipedia.org/wiki/Systemd一、开机启动对于那些支持 Systemd 的软件,安装的时候,会自动在/usr/lib/systemd/system目录添加一个配置文件。如果你想让该软件开机启动,就执行下面的命令(以httpd.service为例)。$ sudo systemctl enable httpd上转载 2016-10-26 17:29:36 · 1189 阅读 · 1 评论 -
Apache2.4.12移植
Apache的移植相对比较复杂,首先得移植其依赖的库。其主要的库有pcre,APR(apache 运行时库),APR-util,和zlib库。 下面我们将分别一一移植: 1. PCRE的移植: 该移植比较简单. >> ./configure --prefix='$INSTALLROOT/pcre' --host=arm-linux CC=arm-linux-gnueabihf-gcc原创 2015-07-17 22:22:01 · 1114 阅读 · 0 评论 -
linux时区问题
结束之前,我们探讨一个尚未展开的话题,即时区问题。这是非常容易让人迷惑的一个话题。因此放在文章的结尾处讨论会好些。 首先介绍两个缩写: UTC 和 LCT。 UTC 就是 Coordinated Universal Time,是全世界通用的时间标准。它是格林威治时间 (GMT) 的后继者,在计算机领域,GMT 术语不再广泛使用,因为它的精度不够高。UTC 是 1963转载 2015-11-10 14:27:51 · 1036 阅读 · 0 评论 -
64 位编译环境搭建
Ubuntu14.04 TI Linux基本编译环境的搭建:1. build-essential 指的是编译程序必须的软件包。 $sudo apt-get install build-essential2. 安装32 bit 兼容库: cd /etc/apt/sources.list.decho "deb http://archive.ubuntu.com/ubuntu/ raring ma原创 2016-08-30 19:26:13 · 845 阅读 · 0 评论 -
Qt Developement guide
1. About GDB debug 1) Start gdbserver on your target board: $ gdbserver <host-ip>:2345 <programm> ## (eg. host-ip : 192.168.0.178)Gdbserver listen the port 2345(of course,you can set any原创 2016-07-21 15:30:47 · 1726 阅读 · 0 评论 -
隐藏Apache版本号的信息
1. 在默认情况下,系统会把Apache版本模块都显示出来(http返回头信息)。如果列举目录的话,会显示域名信息(文件列表正文),如:[root@localhost tmp]# curl -I 192.168.0.1:80HTTP/1.1 200 OKDate: Tue, 05 Apr 2022 07:21:17 GMTServer: Apache/2.4.12 (Unix)Last-Mo转载 2015-10-28 22:16:54 · 1219 阅读 · 0 评论 -
链接器都干了些什么?【转】
目前项目在不停的增长,我想还是在它规模仍旧很小的时候把它的模块分清楚,不同模块分到不同的 projects 里面,这里面出现了很多问题,也反映了我知识上的很多不足。1 , project 最后的输出要设置清楚,有的是 static lib ,有的是 dll ,有的是 exe ,不一样的输出要设置好,它们都是 linker 的成果,但是以不同的方式应用。2 , project dependency 设转载 2015-12-25 22:02:52 · 606 阅读 · 0 评论 -
Ubuntu 12.04 64位安装source insight
1.安装wine:apt-get install wine2.使用wine安装windows程序,如source insight:wine ~/Si35Setup.exe剩余步骤和在windows中相同 3.打开source insightwine ~/Insight3.exe4.解决兼容性 问题1: 用上述命令打开source insight后会发现terminal和其他一些窗口的菜单栏木有转载 2015-10-14 11:35:30 · 1107 阅读 · 0 评论 -
CRC32 tools in Ubuntu /fedora
Ubuntu:sudo apt-get install libarchive-zip-perlfedora:sudo yum install perl-Archive-Zip原创 2017-12-11 10:55:27 · 2941 阅读 · 1 评论 -
chroot mount
slackbox # mount -o bind /proc /mnt/chroot/procslackbox # mount -o bind /dev /mnt/chroot/devumount /mnt/chroot/devumount /mnt/chroot/proc原创 2021-01-21 17:03:27 · 569 阅读 · 0 评论 -
C: 从系统中获取挂载信息分区的通用函数
#include <errno.h>#include <stdio.h>#include <string.h>static int get_mounts_dev_dir(const char *arg, char **dev, char **dir){ FILE *f; char mount_dev[256]; char mount_dir[256]; cha原创 2017-07-27 17:05:32 · 1852 阅读 · 0 评论 -
Systemd-udev 修改网络接口名
如果使用ifconfig 产生了下面的现象:$ ifconfigenp0s25 Link encap:Ethernet HWaddr 77:5a:5e:a6:86:d5inet addr:192.168.31.239 Bcast:192.168.31.255 Mask:255.255.255.0inet6 addr: fe80::725a:b6ff:fea6:86d7/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metr原创 2020-06-30 16:41:10 · 2427 阅读 · 0 评论 -
OPKG命令执行过程分析
一、简介Opkg 是一个基于 ipkg 的轻量级的软件包管理系统,主要用于嵌入式系统,目前应用opkg的有Open WRT 和 Open Embedded。1Opkg的详细使用方法可以参考Open WRT的 WIKI页面2,不再赘述,本文将重点解释opkg的工作原理。Opkg 的源代码可以在Google Code 3或Yocto Project 4上找到。Opkg的版本目前到了0.3.05,我使用的转载 2017-09-08 18:32:56 · 6050 阅读 · 0 评论 -
Ubuntu14.04 交叉编译Qt-creator
1. 下载Qt-creator 的源码: 链接:http://download.qt.io/official_releases/qtcreator/2. diff --git a/src/libs/3rdparty/botan/botan.cpp b/src/libs/3rdparty/botan/botan.cppindex 917c385..4364a2e 100644--原创 2017-10-31 10:53:43 · 1463 阅读 · 4 评论 -
Qt5支持双屏显示
qt 支持双屏显示,网上应该是一大堆,你可以随便百度!但是关于qt5 支持双屏幕显示的资料甚少, 现将其记录下来:让我们引用一段经典的文章吧:Multiple screensWhen having multiple displays connected (e.g. the touch LCD panel and HDMI), there are two framebuffe原创 2017-12-05 17:57:29 · 8887 阅读 · 1 评论 -
An idea about Construct a building system
本文的编译系统是模仿Linux kernel, 但远比Linux kernel 的实现要简单的多.要实现一个简单的编译系统,远比我们平时写的简单的Makefile要复杂的多, 当然我所说的简单的Makefile是指用于单个文件或者几个或几十个文件的(即我们通常使用一个Makefile 搞定的)。为了增强系统的可扩展行,适用于大型项目的编译,我们可能需要一个编译系统,这个是我们今天探究的主题。 对于一原创 2016-11-08 11:10:03 · 401 阅读 · 0 评论 -
linux ehci ehci_urb_enqueue之qh_urb_transaction()分析 【史上最强大分析】
以下文字会对linux usb hcd driver中的ehci_urb_enqueue函数做一些说明。先把该函数罗列一下。/* * non-error returns are a promise to giveback() the urb later * we drop ownership so next owner (or urb unlink) can get it转载 2017-09-29 15:00:15 · 2775 阅读 · 0 评论 -
SPI flash debug trace
最近想直接脱离mtd 层对SPI flash 进行相关操作。 Linux 下spidev的东东能帮我们做这个事情。 于是,我便使用spidev 的API 编写一个操作SPI 的code, 编译,测试, 读取的数据总是0xFF,我测量了了一下SPI 的数据信号和时候总,都是OK的,这个时候陷入了困境, 没有思路了。。。。。在这里要说明一下,我使用的是spi ioctl 函数,它调到驱动了,肯定是调用原创 2016-07-17 15:42:58 · 828 阅读 · 0 评论 -
PCIE 知识
www.ssdfans.com/老男孩读pcie之六:配置和地址空间/原创 2017-12-11 15:40:15 · 1273 阅读 · 0 评论 -
大话mysql5.7 移植(armhf 平台)
mysql 自从5.5 以后,使用cmake 作为它的编译框架。之前一直用autotools 进行编译,即configure & make & make install。为啥要用cmake, 主要原因是,它可以跨平台编译,不但可以用于linux, 还是用于windows。cmake 和Makefile 一样,在每个目录都有一个叫CMakeList.txt 的文件,这个文件控制着该目...原创 2018-10-12 15:09:49 · 2996 阅读 · 5 评论 -
OMAP SOC Compatible
Texas Instruments OMAPOMAP is currently using a static file per SoC family to describe the IPs present in the SoC. On top of that an omap_device is created to extend the platform_device capabilitie翻译 2016-11-09 10:22:47 · 875 阅读 · 0 评论 -
Important net link
The linux documentation project : http://www.tldp.org/guides.html http://tldp.org/LDP/tlk/tlk-toc.html原创 2016-06-12 15:41:53 · 377 阅读 · 0 评论 -
setParameter.sh 修改xml
setParameter.sh#!/bin/sh if [ $# -eq 3 ]; then sed -i 's/<'"$1"\>'.*</<'"$1"'\>'"$2"'</g' $3else echo errorfi转载 2018-11-08 10:58:38 · 253 阅读 · 0 评论 -
Device Tree Customization (转)
IntroductionCompileDevice Tree AnatomyCustomizing The Device TreeNXP®/Freescale Vybrid SoCPinmux (Vybrid)GPIO (Vybrid)NXP®/Freescale iMX6Pinmux (iMX6)Introd转载 2016-06-06 16:21:40 · 1713 阅读 · 0 评论 -
Ubuntu install teamview
Step 1: Download and add TeamViewer repository keyFirst, you need to download the TeamViewer repository key as we will installing TeamViewer through its official website. Run the following command in...原创 2019-10-17 08:59:51 · 265 阅读 · 0 评论 -
Access physical address on application layer
void * get_io_base(unsigned int address, unsigned int size){ fd = open("/dev/mem", O_RDWR | O_SYNC); if (fd < 0 ) return NULL; phy_base =(void *) address; map_base = mmap(转载 2016-08-10 09:06:36 · 359 阅读 · 0 评论 -
ARM Linux 的timezoneinfo 数据库的移植
Linux内核在启动时,将RTC的时间读到系统xtime数据结构中,作为系统时间。在系统关闭时,又将系统时间写入RTC时间。 通常地,Linux内核一般只使用UTC时间,因为Linux内核对时区识别没有相应的处理,它只会将上层传入的关于时区的数据结构转换为UTC时间,LCT时间在内核被设置时,都先转化为UTC时间,再写入xtime数据结构中。 既然内核不负责时区的信息的记录和处理,那么,时区信息原创 2015-11-18 11:31:25 · 2567 阅读 · 0 评论 -
Shell 大杂烩 & Linux std cmd
取掉变量的后缀(%):name=XXX_config$(name%_config) # 取掉_config后缀取掉变量前缀(#):name=XXX_config${name#*_} #取掉_及其前面的所有字符awk 模式+动作awk 'BEGIN {FS = ":" }; {print $1}'# BEGIN 表示awk工作前;#{FS = ":" } 表示将分隔符设为“:“se原创 2015-12-12 16:48:58 · 703 阅读 · 0 评论 -
HowVideoCardWork & DRM_IOCRTL
https://www.x.org/wiki/Development/Documentation/HowVideoCardsWork/原创 2017-03-01 13:36:28 · 602 阅读 · 0 评论 -
The gadget snap
The gadget snap is responsible for defining and manipulating the system properties which are specific to one or more devices that will usually look similar to one another from an implementation perspe...转载 2018-08-28 13:42:36 · 409 阅读 · 0 评论 -
README
Kconfig in U-BootThis document describes the configuration infrastructure of U-Boot.The conventional configuration was replaced by Kconfig at v2014.10-rc1 release.Language SpecificationKconfig originat原创 2016-10-11 09:54:19 · 483 阅读 · 0 评论 -
systemd-udevd mount 无法正常工作
systemd 下设定udev 自动挂载 分区, 结果发现挂载成功,但一直看不到挂载的分区?This is a systemd feature. The original udev command has been replaced by systemd-udevd (see its man page). One of the differences is that it creates it...翻译 2018-08-23 11:36:55 · 2904 阅读 · 0 评论 -
定制ARM 版本的ubuntu core (16.04)
1. 先从snap 包讲起ubuntu core 基本上是诸多snap 包堆积起来的一个系统,正如传统的ubuntu 是debian 堆积起来的一样。但不同的是ubuntu core 也是一个snap 包, 甚至 kernel, uboot 也分别是一个snap 包。因此,就让我们先 了解下snap 包 是个甚么东东吧。1.1 什么是snap ?A snap : is a s...原创 2018-09-25 17:10:25 · 18654 阅读 · 34 评论 -
文章标题
Vringstruct vring { uint32_t num; struct vring_desc *desc; struct vring_avail *avail; struct vring_used *used;};struct vring_desc { /* Address (guest-physical). */ uint64_t addr原创 2016-11-22 10:11:31 · 425 阅读 · 0 评论 -
imx6q initramfs rootfs.cpio.gz.u-boot 的生成详解
fsl-image-mfgtool-initramfs-xxxx.rootfs.cpio.gz.u-boot 的生成流程如下, 该流程来自于yocto2.1 的BB 文件:(cd ${IMAGE_ROOTFS} && find . | cpio -o -H newc >${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}...原创 2019-03-27 13:36:27 · 4564 阅读 · 0 评论 -
PCIe device tree range属性详解
https://elinux.org/Device_Tree_Usage#PCI_Address_Translation原创 2018-11-15 13:22:59 · 3536 阅读 · 1 评论 -
Porting edgecore of kubeedge to armhf
Porting edgecore of kubeedge to armhf1. Cross compile the edgecore2. Install docker3. Create edge node4. Run edgecore5. Deploy a demo app to edgenode.1. Cross compile the edgecoreAbout this topic, ...原创 2019-09-19 09:15:55 · 344 阅读 · 0 评论 -
关于linux kernel hardlockup 的探究
Hardlockup(硬锁)主要是由于或导致的。原创 2024-12-11 19:17:45 · 800 阅读 · 0 评论 -
【Linux kernel】CONFIG_MODVERSIONS介绍
Linux内核的CONFIG_MODVERSIONS选项用于模块符号版本检查,通过CRC校验确保外部模块与内核符号版本一致,防止因符号不匹配导致崩溃。该功能为每个导出符号生成32位CRC值,在模块加载时进行比对,不匹配则报错。启用该选项能提高安全性但会增加编译时间和文件大小。可通过查看内核配置文件确认是否启用,并使用相关命令调试符号CRC值。原创 2025-10-28 11:22:09 · 450 阅读 · 0 评论
分享