编译Openfime G2D,G3D内核模块时的错误解决方法

在编译Tom3q所写s3c6410 android 图形驱动模块(g2d,g3d)时,遇到如下错误

红字部分是主要错误,“kmalloc”,“kfree”错误是由于缺少头文件引起的

#include <linux/slab.h>

添加后解决

问题是由于2.6.36内核之后 去掉了原来的ioctl,添加两个新的成员,所以会出错

  1. long (*unlocked_ioctl) (struct file *, unsigned int, unsigned long);
  2. long (*compat_ioctl) (struct file *, unsigned int, unsigned long);

所以修改源文件中file_operations内

.ioctl 改为 .compat_ioctl 即可

OK,编译通过,警告咱就忽略了?:mrgreen:

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: 编译Openfime G2D,G3D内核模块时的错误解决方法

试编译 Mesa3d EGL GLES for arm linux

./configure –prefix=$PWD/_install –host=arm-linux –enable-gles1 –enable-gles2 –enable-openvg –disable-opengl –with-egl-platforms=fbdev 继续阅读“试编译 Mesa3d EGL GLES for arm linux”

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: 试编译 Mesa3d EGL GLES for arm linux

Eclipse-cdt 配合 gdbserver 进行 arm 程序远程调试 下

上一篇中,介绍了如何编译、运行arm-linux-gdb 和 gdbserver,这一篇中介绍怎样结合Eclipse-cdt进行图形化编译调试

首先当然是使用CDT创建项目并添加源文件。

  1. 在左侧 Project Explorer 的项目名上点右键->Properties 进入项目属性设置
  2. 选择 C/C++ Build->Settings 在Tool Settings中,将Toolchain修改为arm版本

    其他选项默认就好,有需要自己修改



    继续阅读“Eclipse-cdt 配合 gdbserver 进行 arm 程序远程调试 下”

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: Eclipse-cdt 配合 gdbserver 进行 arm 程序远程调试 下

Eclipse-cdt 配合 gdbserver 进行 arm 程序远程调试 上

做嵌入式Linux开发也不用再羡慕windows程序员VS集成开发环境的强大,我们同样能够搭建出给力的IDE。

今天在这里记录一下我使用Eclipse-cdt,gdb,gdbserver搭建远程arm调试的过程。

首先介绍下,嵌入式Linux的GDB调试环境由Host和Target两部分组成,Host端可以理解为本机,Target端为嵌入式设备。
Host端使用arm-linux-gdb,Target 端使用gdbserver。
调试时,应用程序在嵌入式目标系统上通过运行,而gdb调试在Host端。

  1. 编译gdb
    在GNU官网下载最新版GDB ,我这里下载的是7.2版本gdb-7.2.tar.gz

可以通过export命令将/home/aliang/arm-gdb/bin目录加入PATH,使arm-linux-gdb可以直接使用,也可以直接拷贝到/usr/bin 或arm-linux-gcc同目录 继续阅读“Eclipse-cdt 配合 gdbserver 进行 arm 程序远程调试 上”

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: Eclipse-cdt 配合 gdbserver 进行 arm 程序远程调试 上

Ubuntu 安装配置 tftpd

  1. 安装tftpd
  2. 创建 /etc/xinetd.d/tftp文件,填写以下内容
  3. 创建 /tftpboot 目录
  4. 重启xinetd服务
  5. 在本机测试
  6. 在开发板上测试

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: Ubuntu 安装配置 tftpd

yaourt的安装及使用

yaourt-Yet AnOther User Repository Tool

Yaourt是archlinux方便使用的关键部件之一,但没有被整合到系统安装中的工具。建议在装完系统重启之后,更新完pacman和基本系统之后,就安装这个工具。

简便的安装

最简单安装Yaourt的方式是添加Yaourt源至您的 /etc/pacman.conf: 继续阅读“yaourt的安装及使用”

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: yaourt的安装及使用

Debian GNU/Linux 6.0.0 "Squeeze"

GNU/Linux 领域重要的发行版 Debian 终于发布了 Debian 6 “Squeeze” 版本。

Debian 6.0 更新了如下组件:

  • KDE 4.4.5
  • GNOME 2.30
  • Xfce 4.6
  • LXDE 0.5.0
  • X.Org 7.5
  • OpenOffice.org 3.2.1
  • GIMP 2.6.11
  • Iceweasel 3.5.16 (无 Mozilla 商标版本 Firefox)
  • Icedove 3.0.11 (无 Mozilla 商标版本 Thunderbird)
  • PostgreSQL 8.4.6
  • MySQL 5.1.49
  • GNU Compiler Collection 4.4.5
  • Linux 2.6.32
  • Apache 2.2.16
  • Samba 3.5.6
  • Python 2.6.6, 2.5.5 及 3.1.3
  • Perl 5.10.1
  • PHP 5.3.3
  • Asterisk 1.6.2.9
  • Nagios 3.2.3
  • Xen Hypervisor 4.0.1 (dom0 及 domU 支持)
  • OpenJDK 6b18
  • Tomcat 6.0.18

同时,Debian 官网也进行了改版。

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: Debian GNU/Linux 6.0.0 "Squeeze"

长虹工程板路由器刷OpenWrt 10.03.1经历

这张片子是在中嵌时老刘给的,应该是给长虹做代工的工程版,我加了块散热片,什么型号我真不知道,给我的时候就一个光板子
原名应该叫”长虹路由下载机”还是什么的,反正说有bt下载功能,我没弄出来过

配置是这样的

CPU:MIPS ADM5120 175MHz
RAM:32M
ROM:4M NOR flash
接口:1 WAN 4LAN 2USB(1.0) 调试串口(真贴心呐,没有它就没有后面的故事了) 继续阅读“长虹工程板路由器刷OpenWrt 10.03.1经历”

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: 长虹工程板路由器刷OpenWrt 10.03.1经历

ArchLinux的包管理系统: pacman

常用命令有:
pacman -Sy abc 和源同步后安装名为abc的包
pacman -S abc 从本地数据库中得到abc的信息,下载安装abc包
pacman -Sf abc 强制安装包abc
pacman -Ss abc 搜索有关abc信息的包
pacman -Si abc 从数据库中搜索包abc的信息
pacman -Syu 同步源,并更新系统
pacman -Sy 仅同步源

pacman -R abc 删除abc包
pacman -Rc abc 删除abc包和依赖abc的包
pacman -Rsn abc 移除包所有不需要的依赖包并删除其配置文件
pacman -Sc 清理/var/cache/pacman/pkg目录下的旧包
pacman -Scc 清除所有下载的包和数据库
pacman -U abc 安装下载的abs包,或新编译的abc包
pacman -Sd abc 忽略依赖性问题,安装包abc
pacman -Su –ignore foo 升级时不升级包foo
pacman -Sg abc 查询abc这个包组包含的软件包
pacman -Q 列出系统中所有的包
pacman -Q package 在本地包数据库搜索(查询)指定软件包
pacman -Qi package 在本地包数据库搜索(查询)指定软件包并列出相关信息
pacman-optimize To defragment pacman的数据库缓存和速度优化选项
pacman -Q wc -l 统计当前系统中的包数量

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: ArchLinux的包管理系统: pacman