摘要: 将文件系统复制到PC机上,然后再拷贝到别的SD卡后,发现mysql无法启动了,首先检查了一下mysql的错误日志,发现最后出现以下错误:/usr/local/mysql/libexec/mysqld: File './mysql-bin.index' not found (Errcode: 13)提示./mysql-bin.index无法找到(由于mysql开启了bin日志功能),到数据库根目录查看该文件是存在的,可能是文件权限的问题,查看了数据库根目录的权限是700,所有者和用户组都是root,可能是上次转移数据库的时候不小心修改了文件夹的权限。解决方法:chgrp -R m 阅读全文
posted @ 2014-01-27 15:57 Charles-Zhang 阅读(10298) 评论(0) 推荐(0) 编辑
摘要: 移植MySQL到嵌入式ARM平台MySQL没有专门针对ARM的版本,移植到ARM没有官方文档可参考,因此,暂时参考这样一篇文档:http://blog.chinaunix.net/space.php?uid=9701860&do=blog&id=285428,因为MySQL5.5之后,编译是用的cmake不再使用./configure,因此,只好倒回支持./configure的版本来用,这里使用了文档上的5.1.51版本。进行如下步骤完成移植:1)下载mysql5.1.51: http://www.mirrorservice... 阅读全文
posted @ 2014-01-22 16:25 Charles-Zhang 阅读(23024) 评论(3) 推荐(3) 编辑
摘要: 第一步:my74hc595.c#include //模块所需的大量符号和函数定义#include //指定初始化和清除函数#include //文件系统相关的函数和头文件#include //cdev结构的头文件#include //在内核和用户空间中移动数据的函数#include #include MODULE_LICENSE("GPL"); //指定代码使用的许可证 //文件操作函数的声明int my74hc595_open(struct inode *, struct file *);int my74hc595_release(st... 阅读全文
posted @ 2013-12-02 17:31 Charles-Zhang 阅读(7502) 评论(0) 推荐(0) 编辑
摘要: Linux串口c_cc[VTIME]和c_cc[VMIN]属性设置的作用在串口编程模式下,open未设置O_NONBLOCK或O_NDELAY的情况下。c_cc[VTIME]和c_cc[VMIN]映像read函数的返回。VTIME定义等待的时间,单位是百毫秒(通常是一个8位的unsigned char变量,取值不能大于cc_t)。VMIN定义了要求等待的最小字节数,这个字节数可能是0。如果VTIME取0,VMIN定义了要求等待读取的最小字节数。函数read()只有在读取了VMIN个字节的数据或者收到一个信号的时候才返回。如果VMIN取0,VTIME定义了即使没有数据可以读取,read()函数返 阅读全文
posted @ 2013-11-13 13:26 Charles-Zhang 阅读(935) 评论(0) 推荐(0) 编辑
摘要: STEP 1:构建目录结构创建根文件系统目录,主要包括以下目录/dev /etc /lib /usr /var /proc /tmp /home /root /mnt /bin /sbin /sys#mkdir /home/rootfs#cd /home/rootfs#mkdir dev etc lib usr var proc tmp home root mnt sysSTEP 2: 使用busybox构建/bin /sbin linuxrc进入busybox-1.16.1目录,执行#make defconfig#make menuconfigBusybox Setting ----... 阅读全文
posted @ 2013-11-12 12:53 Charles-Zhang 阅读(22315) 评论(1) 推荐(1) 编辑
摘要: 嵌入式Linux启动过程中的问题积累Dongas 07-12-191.Bad Magic Number## Booting image at 33000000 ...Bad Magic NumberOMAP5912 OSK # (tftp下载好kernel的uImage后就停止在这,不能启动kernel)问题原因:启动参数设置错误,0x30000000处不可以执行。有的开发板sdram不是在0x33000000,所以不能把kernel uImage下载到0x33000000中运行。如我之前的bootcmd参数为:setenv bootcmd tftpboot 33000000 uImage/; 阅读全文
posted @ 2013-10-21 16:44 Charles-Zhang 阅读(1805) 评论(0) 推荐(0) 编辑
摘要: Crosstool-ng制作交叉编译工具链交叉编译器可以用现成的,比如CodeSourcery制作的交叉编译器,也可以自己制作,一般是用kernel+gcc+glibc+binutils的源码包来编译安装,后来由于这个太麻烦于是就有类似crosstool这样的自动化配置工具。现在之所以用crosstool-ng是因为crosstool-ng是新的用来建立交叉工具链的工具,它是crosstool的替换者。crosstool的gcc版本只能到4.1.1,无法编译版本高于2.6.29的linux内核。而crosstool-ng一直保持着更新,现在最新能够建立 gcc 4.3.2版本,可用来编译最新内 阅读全文
posted @ 2013-09-13 15:42 Charles-Zhang 阅读(9802) 评论(0) 推荐(0) 编辑
摘要: source insight快捷键及使用技巧退出程序 : Alt+F4重画屏幕 : Ctrl+Alt+Space完成语法 : Ctrl+E复制一行 : Ctrl+K恰好复制该位置右边的该行的字符 : Ctrl+Shift+K复制到剪贴板 : Ctrl+Del剪切一行 : Ctrl+U剪切该位置右边的该行的字符 : Ctrl+;剪切到剪贴板 : Ctrl+Shift+X剪切一个字 : Ctrl+,左边缩进 : F9右边缩进 : F10插入一行 : Ctrl+I插入新行 : Ctrl+Enter加入一行 : Ctrl+J从剪切板粘贴 : Ctrl+Ins粘贴一行 : Ctrl+P重复上一个动作 : 阅读全文
posted @ 2013-05-28 13:45 Charles-Zhang 阅读(725) 评论(0) 推荐(0) 编辑
摘要: 在程序中,经常需要输出系统的当前时间、计算程序的执行时间、使用计时器等。一、时间的类型1.格林威治标准时间coordinated universal time(UTC)是世界标准时间,即常说的格林威治标准时间(greenwich mean time,GMT).2.日历时间日历时间(calendar time)是用"一个标准时间点(如1970年1月1日0点)到此时经过的秒数"来表示的时间.二、时间函数的API时间函数的API均属于系统调用函数.。1.获取日历时间#include <time.h>time_t time(time_t *tloc)函数功能:获取日历时 阅读全文
posted @ 2013-05-10 15:06 Charles-Zhang 阅读(1193) 评论(0) 推荐(0) 编辑
摘要: ARM开发板上iconv_open("utf-8", "gb2312") 调用失败的解决方法应用程序代码如下:static int code_convert(char* from_charset, char* to_charset, char* inbuf, size_t inlen, char* outbuf, size_t outlen){ iconv_t cd; char **pin = &inbuf; char **pout = &outbuf; cd = iconv_open(to_charset, from_charset); 阅读全文
posted @ 2013-05-09 14:32 Charles-Zhang 阅读(2246) 评论(0) 推荐(0) 编辑