自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 收藏
  • 关注

原创 illegal instruction非法指令的解决思路

我移植x264到开发板上,arm linux系统。移植好后将库都拷贝到nfs文件系统上,可是执行后出现illegal instruction的错误。可能是x264配置问题,我的x264开始的编译配置是./configure  --host=arm-none-linux-gnueabi  --cross-prefix=arm-linux-  --prefix=/opt/x264-arm  -

2013-05-03 15:05:57 27352

原创 linux和安卓上(ppp widget)使用3g网卡的方法

在usb 3G上网卡中,有许多都是使用的称为zeroCD的一种模式。就是在初始时,将3G上网卡,识别为一个CD设备。然后自动安装驱动,安装完成后。自动卸载。将3G网卡转换成串口模式。要想在linux和安卓上使用3g网卡,一个很重要的东西就是网卡的参数,最好先在windows上运行,获取那些参数再到linux上配置。我买的创景SEV959电信3g网卡,终端上输入lsusb,得到Bus

2012-12-27 22:16:19 10494 1

原创 群聊程序的linux代码实现

#include #include #include #include #include #include #include #include #define BUFLEN 255struct sockaddr_in addr,peeraddr;int sockfd;void * thr_send(void *arg){ char sendmsg[BUFLEN +

2013-10-20 10:59:58 1788

原创 单词索引表

读入一个英文的文档,然后建立一个单词引用索引表,也就是说,对于该文档中出现的所有单词,按照字母顺序进行排序,并且每个单词后面跟着它在文档中出现的行号。然后把这个索引表显示出来,同时保存在一个输出文件中。为了方便处理,假定文档长度不超过1000个字符,行数不超过20行,文档中的单词最长不超过20个字母。噪声单词,如“a, an, and, are, in, is, of, or, that, the

2013-08-14 19:32:03 3194

转载 Linux进程状态解析之R、S、D、T、Z、X

Linux进程状态解析之R、S、D、T、Z、XLinux是一个多用户,多任务的系统,可以同时运行多个用户的多个程序,就必然会产生很多的进程,而每个进程会有不同的状态。Linux进程状态:R (TASK_RUNNING),可执行状态。只有在该状态的进程才可能在CPU上运行。而同一时刻可能有多个进程处于可执行状态,这些进程的task_struct结构(进程控制块)被放入对应CPU的可执行队列中(一个进

2013-08-13 10:33:47 2291

转载 (4M+2)阶魔方阵算法

魔方阵是个很经典的数组排列算法,就是将nxn的自然数序列排为二维数组,其中行列斜上每个数字的和都等于同一个数,这就是魔方阵最基本的特性。魔方阵算法分为三种情况,分别是奇数阶、4K阶(K为任意自然数)、2n阶(n为任意奇数)。其中2n阶是最难计算的一种,今天,李木就分享一下它的算法。举个例子,3阶魔方阵如下:它的算法就不详细说明了,4阶魔方阵算法也是很简单的,

2013-05-23 22:38:51 3722

转载 GDB+GdbServer: ARM程序调试

内容摘要 远程调试环境由宿主机GDB和目标机调试stub共同构成,两者通过串口或TCP连接。使用 GDB标准程串行协议协同工作,实现对目标机上的系统内核和上层应用的监控和调试功能。调试stub是嵌入式系统中的一段代码,作为宿主机GDB和目标机调试程序间的一个媒介而存在。 就目前而言,嵌入式Linux系统中,主要有三种远程调试方法,分别适用于不同场合的调试工作:用ROM Monitor调试目标机程序

2013-05-03 18:53:41 1100

转载 linux驱动 结构体中的逗号

发表于 : 2011-06-17 4:23由 longyi在阅读GNU/Linux内核代码时,我们会遇到一种特殊的结构初始化方式。该方式是某些C教材(如谭二版、K&R二版)中没有介绍过的。这种方式称为指定初始化(designated initializer)。下面我们看一个例子,Linux-2.6.x/drivers/usb/storage/usb.c中有这样一个结构体初始化项目:

2013-05-01 15:50:16 1074

转载 copy_to/from_user和get/put_user的区别

copy_to_user -- Copy a block of data into user space. copy_from_user -- Copy a block of data from user space.get_user -- Get a simple variable from user space. put_user -- Write a simple value i

2013-05-01 15:47:30 1770

转载 linux驱动中__attribute__机制介绍

1. __attribute__GNU C的一大特色(却不被初学者所知)就是__attribute__机制。__attribute__可以设置函数属性(Function Attribute)、变量属性(Variable Attribute)和类型属性(Type Attribute)__attribute__前后都有两个下划线,并且后面会紧跟一对原括弧,括弧里面是相应的__a

2013-05-01 15:45:55 773

转载 mdev原理

mdev原理mdev 是busybox 自带的一个简化版的udev,适合于嵌入式的应用埸合。其具有使用简单的特点。它的作用,就是在系统启动和热插拔或动态加载驱动程序时,自动产生驱动程序所需的节点文件。在以busybox 为基础构建嵌入式linux 的根文件系统时,使用它是最优的选择。使用过程:(1)在编译时加上对mdev 的支持(我是使用的是busybox1.10.1):

2013-05-01 15:31:09 703

转载 linux文件系统制作(二)

完善所制作的根文件系统1.NFS文件系统的挂载2.嵌入式web服务器Boa的移植3.音乐播放器madplay的移植 一、NFS文件系统的挂载在虚拟机的linux上构建NFS服务器,在ARM的linux下可以直接挂载NFS,直接访问NFS上的共享文件。1.构建NFS服务器:进入主菜单-->系统设置-->服务器设置-->NFS服务器

2013-05-01 15:14:36 754

转载 linux文件系统制作(一)

文件制作4步骤一、准备制作(创建系统目录)二、编译busybox(制作文件系统的必备工具)三、制作文件系统(添加必备的文件,制作镜像)四、完善文件系统(根据需要,移植更多的应用程序)step1:准备制作创建根文件系统目录,主要包括以下目录:/bin,/etc,/dev,/home,/lib,/mnt,/opt,/proc,/root./sbin,/sys,/tmp,

2013-05-01 15:12:58 1591

转载 QPixmap/QImage/QPicture

QImage与Qpixmap的区别1、QPixmap主要是用于绘图,针对屏幕显示而最佳化设计,QImage主要是为图像I/O、图片访问和像素修改而设计的2、QPixmap依赖于所在的平台的绘图引擎,故例如反锯齿等一些效果在不同的平台上可能会有不同的显示效果,QImage使用Qt自身的绘图引擎,可在不同平台上具有相同的显示效果3、目前的Qt会把QPix

2013-05-01 14:38:22 1324

转载 QT在ARM平台的移植(三)

Qtopia4.2.4移植内核版本:Linux-2.6.31Qtopia版本:Qtopia-opensource-4.2.4,这个版本带有手机桌面环境交叉编译器:arm-linux-gcc 4.1.2 支持EABI操作系统平台:Linux -- Red Hat 9.0开发板平台:Arm -- S3C2440(TX244

2013-05-01 14:32:25 1486

转载 QT在ARM平台的移植(二)

QtEmbedded-4.5.3-arm 移植Qt/E 版本:      QtEmbedded-4.5.3-arm  交叉编译器版本:      arm-linux-gcc 4.1.2  操作系统平台:      Linux -- Red Hat 9.0  开发板平台:      Arm -- S3C24401、解压QtEmbedded-4.5.3-ar

2013-05-01 14:30:23 1332

转载 QT在ARM平台的移植(一)

开发板上的qt程序要使用触屏的,使用前要进行校正,1. 移植tslib(触摸屏校正)2. Qt/E-4.5.3在ARM上的移植3. Qtopa4.2.4手机平台在ARM上的移植一、移植tslib    tslib是一个开源的触摸屏支持库,它是handhelds.org上开发的,作者是Russul King,Douglas Lowder和Chris Larson。它给上层的应

2013-05-01 14:28:29 1636

原创 arm移植x264 ffmpeg配置

移植x264配置./configure  --host=arm-none-linux-gnueabi  --cross-prefix=arm-linux-  --prefix=/opt/x264-arm  --enable-shared  --extra-cflags="-march=armv6k -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=soft

2013-05-01 14:10:25 1129

原创 开发板 nfs /bin/sh Permission denied

制作好文件系统,用nfs加载后,将编译好的程序复制进去却不能执行,提示[root@Enjoylinux /]# ./hello -/bin/sh: ./hello: Permission denied是因为链接库的权限问题,所以只要chmod 755 lib/*给它执行的权限就好了。

2013-04-30 19:00:35 1347

转载 嵌入式Linux启动过程中的问题积累

嵌入式Linux启动过程中的问题积累 Dongas 07-12-19 1.Bad Magic Number## Booting image at 33000000 ...Bad Magic NumberOMAP5912 OSK # (tftp下载好kernel的uImage后就停止在这,不能启动kernel) 问题原因:启动参数设置错误,0x30000000处不

2013-04-30 15:25:12 1077

转载 "mkimage" command not found

UIMAGE  arch/arm/boot/uImage"mkimage" command not found - U-Boot images will not be built  Image arch/arm/boot/uImage is readycp: 无法获取"arch/arm/boot/uImage" 的文件状态(stat): 没有那个文件或目录使用make uIma

2013-04-29 17:00:38 915

原创 ubuntu nfs安装

mkdir /nfsmkdir /nfs/rootfsapt-get install nfs-kernel-server   nfs-commongedit /etc/exports/nfs  *(rw,no_root_squash,sync) /etc/init.d/nfs-kernel-server restartmount

2013-04-29 11:06:05 470

转载 Linux下minicom的配置和使用方法

# lsmod | grep usbserial (如果直接使用串口线,而没有用到USB转串口设备,此步可以跳过)   如果有usbserial,说明系统支持USB转串口。 安装minicom (Fedora自带有minicom,此步可以跳过)   apt-get install minicom   apt-get install lrzsz配置minicom   # mi

2013-04-29 10:34:40 770

转载 ubuntu 12.04 tftp的安装与设置

为了方便配置,最好用root帐户安装tftp-hpa   tftpd-hpa  xinetdvimsudo apt-get install tftp-hpa tftpd-hpa xinetd在根目录下创建文件夹/tftpboot/root修改目录权限chmod -R 777 /tftpboot 修改tftp配置文件,如果没有就创建#gedit /

2013-04-29 10:29:38 656

原创 ubuntu root用户登录及解决没有声音的问题

一、修改成root登录:1、先设定一个root的密码,sudo passwd root2 、备份一下lightgdm,cp -p /etc/lightdm/lightdm.conf /etc/lightdm/lightdm.conf.bak3、 vi /etc/lightdm/lightdm.conf修改后为:[SeatDefaults]greeter-

2013-04-13 16:35:39 999

原创 makefile编写

有时一个程序文件太多,编译不方便总出错时,就要编写makefile文件,事半功倍。什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在U

2013-04-13 14:43:56 641

原创 Relocations in generic ELF (EM: 40)

/usr/bin/ld: ./libdialcrypt.a(d3des.o): Relocations in generic ELF (EM: 40)./libdialcrypt.a: could not read symbols: File in wrong formatcollect2: error: ld returned 1 exit status解决方法:如果libd

2013-04-13 14:04:39 6286

原创 yv12_to_rgb

#define CLIP(value) (uchar)(((value)>0xFF)?0xff:(((value)<0)?0:(value)))int yv12_to_rgb(uchar *yv12, uchar *rgb, uint width,uint height){ uchar *py; uchar *pu; uchar *pv;//此部分注释见另一篇yuyv

2013-01-16 19:22:52 2192

原创 yuyv_to_yv12

int yuyv_to_yv12(uchar *yuyv, uchar *yv12, uint width, uint height){ uchar *py; uchar *pu; uchar *pv; uint linesize = width * 2;//yuyv格式每行字节数为width*2 uint uvlinesize = width / 2;/

2013-01-16 19:08:20 1780 1

原创 pppd拨号创建新的plugin定制自己的拨号软件

The idea of plugins is to provide a way for people to customize the behaviour of pppd without having to either apply local patches to each version or get their patches accepted into the standard distr

2012-12-28 11:16:02 3896

原创 linux下挂载mtp设备(nexus7)

在Ubuntu挂载使用MTP设备步骤如下:1.将MTP设备连接至PC机2.如果是第一次使用MTP设备需要安装以下软件,否则可以跳过此步骤:$ sudo apt-get install mtpfs libfuse-dev libmad0-dev建立挂载点$ sudo mkdir /media/nexus7 修改权限$ sudo chmo

2012-12-27 17:19:57 6756

原创 linux和Qt下获取本机每个接口的ip地址

#include #include #include #include #include #include #include #define ERRORIP "cannot find host ip" char *ip_search(void) { int sfd, intr; struct ifreq buf[6];//最

2012-12-27 16:54:17 1391

原创 linux基本的聊天软件代码实现

#include #include #include #include #include #include #include #include #include #include #include #define SERVER_PORT 8888#define MAX_STR_SIZE 1024void sendchat(){ int send_fd; str

2012-12-27 16:35:30 987

原创 YUV4:2:2转换成RGB的代码

int convert_yuv_to_rgb_pixel(int y, int u, int v){ uint pixel32 = 0; uchar *pixel = (uchar *)&pixel32; int r, g, b; r = y + (1.370705 * (v-128)); g = y - (0.698001 * (v-128)) - (0.337633 * (u-12

2012-12-27 16:15:46 5355

原创 将RGB图像数据压缩成jpg格式图片的代码实现

#include #define JPEG_QUALITY 100 //图片质量int savejpg(uchar *pdata, char *jpg_file, int width, int height){ //分别为RGB数据,要保存的jpg文件名,图片长宽 int depth = 3; JSAMPROW row_pointer[1];//指向一行图像数据的指针

2012-12-27 15:49:13 15590 5

原创 将rgb图像数据保存为BMP格式图片的方法

extern "C"{ #include #include #include }typedef long LONG;typedef unsigned long DWORD;typedef unsigned short WORD;typedef struct { WORD bfType; DWORD bfSize;

2012-12-27 15:38:49 23202 5

原创 linux v4l2 摄像头采集视频的方法

linux上用v4l2函数接口获取视频主要是一个步骤流程,一步步做就很容易,现已我在qt下编写的一个读取摄像头视频的程序中的相关代码为例。首先打开视频设备,比如/dev/video0,fd = open(dev_name.toStdString().c_str(), O_RDWR/*|O_NONBLOCK*/, 0); if(-1 == fd) { emit

2012-12-27 15:23:06 9881 25

原创 linux上chrome、vlc等程序root不能运行的解决办法

chrome、vlc等程序使root用户无法使用的原理是:它获取程序的所有者,如果它是root用户,就让它不能运行。程序中用到的函数是geteuid()。geteuid就是get essensial user id,获取有效用户id。每一个用户都有一个id,root用户id为0,普通用户id为1000以上。知道原理后就可以得出解决办法了,就是将geteuid替换成getppid。getpp

2012-12-27 14:41:26 9220 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除