linux
天长地久007
嵌入式农业仪器开发。
展开
-
linux下Deb软件包常用命令
【dpkg】只能安装本地已经存在了的软件包,不会自动去internet下载;还有就是不会检查软件包之间的依赖关系!!dpkg-i 安装一个在本地系统里存在的Debian软件包dpkg-r 移除一个已经安装的软件包dpkg-P(大写) 移除已经安装的软件包及其配置文件dpkg-L原创 2014-07-02 08:19:56 · 909 阅读 · 0 评论 -
/lib/libc.so.6: version&nbs…
移植QT程序后运行报错:/lib/libc.so.6: version `GLIBC_2.9' not found原因是:编译QT的编译器版本过高解决办法:将编译QT的编译器的库文件拷贝到/lib目录下即cp ../4.4.3/lib/* /lib原创 2014-07-02 08:22:26 · 594 阅读 · 0 评论 -
进程间的通信相关函数
LINUX 进程间通信方式:传统:有名管道:mkfifo write read close无名管道:pipe write read close信号: signal kill raise pausealarmPOSIX:信号量:有名:sem_open sem_closesem_unlink无名:sem_init sem_destroysem_post sem_wait sem原创 2014-07-02 08:20:40 · 543 阅读 · 0 评论 -
网络编程相关函数
一、sockedint socket(int domain,int type,int protocol); 用来创建一个套接字,完成本地进程间或者网络通信。返回值:文件描述符或-1(出错)参数:1.通信域:AF_LOCAL/AF_UNIX: 本地通信域,进程间通信AF_INET: ipv4的网络通信域AF_INET6: ipv6的网络通信域2.通信类型:SOCK_STREAM原创 2014-07-02 08:20:42 · 464 阅读 · 0 评论 -
make: warning: Clock skew detec…
在Linux下编译代码提示:make: warning: Clock skewdetected. Your build may be incomplete这个错误是由于系统时间比文件修改时间早造成的,一般可以通过修改系统时间来消除错误:date命令查看当前系统时间date -s 5/18/2011 命令可以修改系统日期date -s 16:10:59命令可以修改系统时间总之原创 2014-07-02 08:21:39 · 509 阅读 · 0 评论 -
vim下的快捷方式
【1】开始编辑vim文件名 打开或创建一个Vim文件进入编辑模式:新增(append)a 光标后插入 A 光标所在行的末尾插入 插入(insert) i 光标前插入I 光标所在行的首插入打开(open)o 上一行插入O原创 2014-07-02 08:19:26 · 440 阅读 · 0 评论 -
vim编辑器如何永久显示行号
在Linux环境下的编辑器有vi、vim、gedit等等。进入这些编辑器之后,为了方便我们需要编辑器显示出当前的行号,可偏偏编辑器默认是不会显示行号的。我们有二种办法可以解决: 第一种是,手动显示:在vim命令行模式下输入 :set nu 取消显示:在vim命令行模式下输入: set nonu 第二种是,永久自动显示:我们修改一个配置文件。 VIM 配置原创 2014-07-02 08:20:04 · 486 阅读 · 0 评论 -
ubuntu下NFS服务器配置
服务器端【下载软件】root@ubuntu:/home/linux# apt-getinstall nfs-kernel-serverReadingpackage lists... DoneBuildingdependency tree Readingstate information... Donenfs-kernel-server is already the n原创 2014-07-02 08:20:10 · 731 阅读 · 0 评论 -
linux命令行下的快捷方式
搜索历史命令的快捷键:Ctrl + r打开客户端命令Ctrl+shift+n 新建一个终端Ctrl+shift+t 新建一个标签Ctrl+Alt+t 新建一个终端与上一个有区别移动操作快捷键Ctrl + f-- 向右移动一个字符,当然多数人用→Ctrl + b-- 向左移动一个字符, 多数人用←ESC + f-- 向右移动一个单词,MAC下建议用ALT + →E原创 2014-07-02 08:20:17 · 589 阅读 · 0 评论 -
TCP/IP与UDP 的C/S 模型
TCP/IP:head:#ifndef __HEAD_H__#define __HEAD_H__#include#include#include#include#include#include#include#include#include#include#define error_exit(_errmsg_) error(EXIT_FAILURE, errno,原创 2014-07-02 08:20:44 · 709 阅读 · 0 评论 -
多文件、多目录的Makefile的编写
一、同一文件中多个.c的Makefile需求:当前目录下有:func.h、func.c、main.c三个文件要生成main的可执行文件CC = gccCFLAGS = -g -Wallmain:main.o func.o $(CC) main.o func.o -o mainmain.o:main.c $(CC) $(CFLAGS) -c main.c -o m原创 2014-07-02 08:21:13 · 693 阅读 · 0 评论 -
修改/etc/profile后输入正确的用户…
一、在登陆界面 按下 Ctrl+Alt+F1 进入命令行二、输入 #root (用户名) #1 ( root的密码)三、将你上次改动的/etc/profile文件还原 #vi /etc/profile 删除上次的改动四、重启 #reboot 输入正确的用户名和密码无法登陆大多是由原创 2014-07-02 08:21:41 · 702 阅读 · 0 评论 -
Ubuntu修复模式提示readonly问题
重新挂在分区一、 #df-l 查看分区二、 #mount -o remount,rw/ 以读写方式重新挂在分区原创 2014-07-02 08:21:44 · 2285 阅读 · 0 评论 -
SQLite向arm-linux的移植
SQLite是一个开源的嵌入式关系数据库。一、SQLite环境的建立:1.首先从下载最新版本的sqlite源码包,我下载的是sqlite-amalgamation-3.7.3.tar.gz,并将下载的文件解压。下载地址:http://pan.baidu.com/s/1kTKBxmJ2.在解压生成的 sqlite-3.7.3 目录下执行./configure --host=原创 2014-07-02 08:22:04 · 608 阅读 · 0 评论 -
触摸屏驱动程序之使用TSLIB出错分…
问题分析: 问题一:制作动态根文件系统启动时,提示:Failed to execute /linuxrc.……kernel panic-notsyncing:No init found.这里发生错误是因为制作动态根文件系统时,库没完整拷贝到/nfsroot/rootfs/lib下cp*.so* /nfsroot/rootfs/lib -d还是卡在这,后来改用-dpR通过了。转载 2014-07-02 08:22:22 · 834 阅读 · 0 评论 -
总结一下/boot分区被删后的各种悲剧
第一:Ubuntu开机出现grub rescue的模式下修复 由于在Windows下面对分区修改,导致grub所在分区由sda3变成了sda2了,这样一来找不到grub了,Ubuntu开机就出现了 grub rescue > 在此情况下,可以如下解决,并不用重新安装系统 第一步,找出你的Linux盘在那个分区以及grub目原创 2014-10-31 09:55:35 · 2698 阅读 · 0 评论 -
SQList3的简单学习
******************************************************************--------------部分操作--------------建数据库:linux@ubuntu:~$ sqlite3 my.db查看帮助:sqlite> .help文件存放位置:sqlite> .database退出:sqlite> .quit原创 2014-07-02 08:20:48 · 1660 阅读 · 0 评论 -
Qtcreator中文输入法不能使用问题
Qtcreator中文输入法不能使用问题原创 2014-11-06 15:44:03 · 1251 阅读 · 0 评论 -
ARM-Linux自动获取IP地址 (配置DHC…
飞凌:OK210自带的系统内核已经包含了[*] udhcp client (udhcpc)只需 修改系统初始化配置文件,让开发板开机后自动获取IP地址:修改/etc/init.d/rcS文件在适当位置添加命令: /sbin/udhcpc &如果要自己编译内核则按如下方式配置内核:1. 配置内核:[*] Networking support ---> Networking原创 2014-07-02 08:21:52 · 1464 阅读 · 0 评论 -
IO多路复用服务器模型
原创 2014-07-02 08:20:46 · 596 阅读 · 0 评论 -
线程相关函数
一、创建线程pthread_join(pthread_t *tid,const pthread_attr_t *attr,void*(*start_routine)(void*) ,void *arg)参数:@tid线程号 @*(*start_routine)(void*)回调函数,即线程要执行的任务其余参数默认NULL二、等待pthread_join(pthread_t *t原创 2014-07-02 08:20:35 · 422 阅读 · 0 评论 -
ubuntu下网络的配置
Ubuntu12.04网络配置首先关闭windows下的防火墙若用虚拟机请改为桥接形式(VM-->seting-->network-->选择bridge)一 静态配置网络-使用/etc/network/interfaces1)编辑配制文件:sudo vi /etc/network/interfaces 加入以下配置信息(修改为你自己的): auto loiface lo ine原创 2014-07-02 08:20:06 · 451 阅读 · 0 评论 -
TFTP服务器的配置
服务器的配置【1】获得root权限linux@ubuntu:~$ surootPassword:【2】装在必要软件linux@ubuntu:~$ sudo apt-getinstall ftpd-hpa[sudo] password for linux:Reading package lists... DoneBuilding dependency tree Rea原创 2014-07-02 08:20:08 · 836 阅读 · 0 评论 -
简单的shell脚本编程
shell脚本语言是解释型语言其本质是shell命令的有序集合后缀大多为.sh【编程过程】1)建立shell文件 vim a.sh2)赋予权限 chmod a+x a.sh3)执行 ./a.sh[参数]【shell变量】注意shell变量没有数据类型 不用提前定义 默原创 2014-07-02 08:20:15 · 423 阅读 · 0 评论 -
标准I/O 库函数
库:一组实现好的函数接口一.printf函数族 int printf(const char *format,...); //默认向stdout输出int fprintf(FILE *stream, const char *format,...); //指定一个流输出int sprintf(char *str, const char原创 2014-07-02 08:20:22 · 437 阅读 · 0 评论 -
获取文件的属性信息及其操作函数
一、获取文件属性信息int stat(const char *path, structstat *buf);int fstat(int filedes, struct stat *buf); (获取一打开文件的属性)int lstat(const char *file, struct stat *buf); (获取软连接的信息)功能:获得文件的属性信息原创 2014-07-02 08:20:28 · 918 阅读 · 0 评论 -
Linux 库 创建自己的静…
库:一组实现好的函数接口Linux 库: 静态库 和 动态库 一.gcc的特性1.默认搜索库的路径 /usr/lib 和 /lib2.默认搜索头文件的路径 /usr/include ------------------------------------------1.指定gcc搜索库的路径: -L 库的路径注意:gcc默认在链接库的时候只能认识自带的库,第三库不能识别原创 2014-07-02 08:20:30 · 348 阅读 · 0 评论 -
进程的相关函数
一、创建进程pid_t fork(void)功能:创建一个子进程,子进程复制父进程的空间由fork以下执行返回值:成功,父进程返回子进程ID,子进程返回0;失败父进程返回-1二、进程堵塞(1)pid_t wait(int *status);功能:父进程以堵塞的方式获取第一个消亡的子进程状态信息存入status返回值:为第一结束的子进程ID@status:可以调用宏查看里边的信息.原创 2014-07-02 08:20:33 · 456 阅读 · 0 评论 -
Linux中grep命令的12个实践例子
你是否遇到过需要在文件中查找一个特定的字符串或者样式,但是不知道从哪儿开始?那么,就请grep来帮你吧grep是每个Linux发行版都预装的一个强有力的文件模式搜索工具。无论何种原因,如果你的系统没有预装它的话,你可以很容易的通过系统的包管理器来安装它(Debian/Ubuntu系中的apt-get和RHEl/CentOS/Fedora系中的yum)。 $ sudo apt-get in原创 2014-07-02 08:20:58 · 455 阅读 · 0 评论 -
ubuntu软件中心不能使用问题
问题:出现crash report :The application Ubuntu Software Center hasclosed unexpectly。关了这个对话框后又出现 Invalid problem report:Could not determine the package orsource package name。解决办法:sudo rm /var/lib/apt原创 2014-07-02 08:21:17 · 2107 阅读 · 0 评论 -
修改Linux开机图片(小企鹅)
1.安装Windows版(gimp-2.6.9-i686-setup.exe 或最新版本) 打开任何格式的一张将要转换的图片 选择:图像--->模式--->索引颜色转换--->最大颜色数量设置为(224)--->转换 还可以通过:图像--->缩放图像--->设置想要的图像大小 最后:文件--->另存为--->选择ppm格式--->保存格式为ASCII原创 2014-07-02 08:21:50 · 1167 阅读 · 0 评论 -
ARM开发板上ncurses库的移植
1.下载库源码库文件源码下载地址http://mirror.bjtu.edu.cn/gnu/ncurses/ 选择5.7版本下载得到压缩文件ncurses-5.7.tar.gz 将压缩解压,得到目录ncurses-5.7 2.编译 进入目录ncurses-5.7 以下配置与编译参考ncurses源文件中的INSTALL文件。 由于编原创 2014-07-02 08:22:06 · 1157 阅读 · 0 评论 -
gcc -c与-l -- lin…
在项目中增加了新的库,重构了一下项目,依赖关系更加复杂了,于是在一个单独的项目文件夹中也放了一个makefile进去,make一下出现了 linker input file unused because linking not done 的提示。查了半天也没有头绪,最后突然领悟使用-c是编译成.o的中间文件,这一步只检查语法错误,不检查依赖关系,所以不能加-l,因为既然不检查依赖关系,你给原创 2014-07-02 08:22:11 · 550 阅读 · 0 评论 -
linux下常用的shell命令
【快捷方式】Ctrl+l 清屏Ctrl+k 删除光标后的命令Ctrl+u 删除光标前的命令Tab(TabTab) 补齐文件或命令上下键原创 2014-07-02 08:19:59 · 463 阅读 · 0 评论 -
ubuntu下中文输入法的设置
这里我们主要说下Ubuntu英文系统中,中文输入法的安装。第一步,是安装语言包。我们选择SystemSettings-->Language Support-->Install/RemoveLanguages,将弹出以下窗口:输入密码后,系统会安装简体中文语言包。这个步骤可能比较慢耐心等待第二步,安装IBus框架,在终端输入以下命令:sudoapt-get i原创 2014-07-02 08:20:24 · 430 阅读 · 0 评论 -
文件I/O 函数
文件I/O与标准I/O的比较:标准IO:带缓存,大部分函数是在系统调用之上实现,操作对象 "流"文件IO:不带缓存,直接和系统调用关联,操作对象"文件描述符"一、打开文件 int open(const char *pathname, int flags);int open(const char *pathname, int flags, mode_t mode);功能:打开或创建文件原创 2014-07-02 08:20:26 · 410 阅读 · 0 评论 -
浅谈程序在内存中的分布
其中 :.text 部分是编译后程序的主体,也就是程序的机器指令。在text和data之间存在一个.rodata(只读存储区)用来存储常量如字符串常量,const修饰的变量.data 和 .bss保存了程序的全局变量(也叫静态变量),.data保存有初始化的全局变量和static修饰的变量.bss保存只有声明没有初始化的全局变量。heap(堆)中保存程序中动态分配的内存,比如C的原创 2014-07-02 08:21:00 · 428 阅读 · 0 评论 -
ubuntu12.04下设置root用户登录
【更改root密码】ltm@ltm-virtual-machine:~$sudo passwdEnter new UNIX password:Retype new UNIX password:passwd: password updated successfully【转为root用户】ltm@ltm-virtual-machine:~$su rootPassword:【更改配置原创 2014-07-02 08:20:13 · 456 阅读 · 0 评论 -
QT unixODBC+freetds连接sqlserver并交叉编译移植到ARM上
最近产品需要做一个数据上传功能。客户要求直接写入SQLserver数据库。之前QT连接数据库是默认来年将诶sqlite数据库。由于sqlite是QT默认自带的操作起来比较简单,但是SQLserver QT没有带驱动所以需要安装驱动插件。下面我们来看一下是QT支持SQLServer所需要的插件。原创 2014-11-14 14:29:55 · 7033 阅读 · 0 评论