Linux开发
文章平均质量分 73
zhu2695
Coding life....
展开
-
Linux使用Eclipse开发C/C++环境配置
1. 下载jre,eclipse,cdt其中jre是java运行环境,eclipse需要先装jre,才可能运行,cdt是在eclipse中运行c\c++程序的插件。1.1 下载jre网址是:java.sun.com,点击java se,然后,选择download jre点击“jre-6u18-linux-i586.bin”就可以得到转载 2016-05-26 23:32:51 · 3050 阅读 · 0 评论 -
make命令
make命令是GNU的工程化编译工具,用于编译众多相互关联的源代码问价,以实现工程化的管理,提高开发效率。语法make(选项)(参数)选项-f:指定“makefile”文件;-i:忽略命令执行返回的出错信息;-s:沉默模式,在执行之前不输出相应的命令行信息;-r:禁止使用build-in规则;-n:非执行模式,输出所有执行命令,但并不执行;-t:更新目标文转载 2016-05-20 01:01:09 · 935 阅读 · 0 评论 -
Linux下使用Vim进行C/C++ 编程基础知识详解
(预备知识)学习Vim: http://www.cnblogs.com/starspace/archive/2009/05/15/1458044.html配置Vim: http://haohetao.javaeye.com/blog/690715 总结: 安装vim --> 配置 /etc/vim/vimrc 文件 使得vim能够支持语法高亮、自动缩进等等功能转载 2016-05-22 00:22:42 · 7276 阅读 · 0 评论 -
一步步将vim改造成C/C++开发环境(IDE)
我的vim IDE界面: 1、安装Vim和Vim基本插件首先安装好Vim和Vim的基本插件。这些使用apt-get安装即可:lingd@ubuntu:~/arm$sudo apt-get install vim vim-scripts vim-doc其中vim-scripts是vim的一些基本插件,包括语法高亮的支持、缩进等等。vim中文帮助文档tar包下载地址:转载 2016-05-22 00:26:55 · 867 阅读 · 0 评论 -
Vim:打造Linux C/C++程序员的编辑器
所谓“工欲善其事,必先利其器”,所谓“磨刀不误砍柴工“。在linux 下,vim 时一种最常见的编辑器,很多linux的发行版就自带了(不过 Ubuntu目前时需要自己安装的,默认只带了vi)。今天搞了半天了Vim,通过几个插件来武装我的vim,使其能向传说中的一样成为C/C++程序员的利器。 通过配置和插件,实现的功能有:语法高亮+自动缩进+函数自动补全+变量函数的跟踪+列出源代码中的函转载 2016-05-22 00:32:51 · 2990 阅读 · 0 评论 -
Linux下开发环境(gcc/g++/makefile/gdb)
先决条件 gcc 这是c语言的编译器 从前,我写了一个Linux多线程到程序Main.c,使用gcc -g Main.c -lpthread -o Main编译,就出现来未安装gcc的提示,我按照提示输入来几个y,然后就把gcc装好了。但是,其实,在Red Hat Enterprise Linux 6上,默认已经安装好gcc,可以编译C语言程序了。转载 2016-05-22 00:38:49 · 1001 阅读 · 0 评论 -
Linux下C/C++编译器GCC/G++使用简介
一、GCC简介通 常所说的GCC是GNU Compiler Collection的简称,除了编译程序之外,它还含其他相关工具,所以它能把易于人类使用的高级语言编写的源代码构建成计算机能够直接执行的二进制代 码。GCC是Linux平台下最常用的编译程序,它是Linux平台编译器的事实标准。同时,在Linux平台下的嵌入式开发领域,GCC也是用得最普遍 的一种编译器。GCC之所以被广泛采用转载 2016-05-22 00:41:20 · 622 阅读 · 0 评论 -
Linux 线程同步的三种方法
线程的最大特点是资源的共享性,但资源共享中的同步问题是多线程编程的难点。linux下提供了多种方式来处理线程同步,最常用的是互斥锁、条件变量和信号量。一、互斥锁(mutex)通过锁机制实现线程间的同步。初始化锁。在Linux下,线程的互斥量数据类型是pthread_mutex_t。在使用前,要对它进行初始化。静态分配:pthread_mutex_t mutex =转载 2016-06-03 20:36:56 · 505 阅读 · 0 评论 -
Linux下面的线程锁,条件变量以及信号量的使用
一) 线程锁1) 只能用于"锁"住临界代码区域2) 一个线程加的锁必须由该线程解锁.锁几乎是我们学习同步时最开始接触到的一个策略,也是最简单, 最直白的策略.二) 条件变量,与锁不同, 条件变量用于等待某个条件被触发1) 大体使用的伪码:// 线程一代码pthread_mutex_lock(&mutex);// 设置条件为truepthread_co转载 2016-06-03 20:41:10 · 728 阅读 · 0 评论 -
gcc和g++的比较
gcc和g++都是GNU(一个组织)的编译器。1、对于.c后缀的文件,gcc把它当做是C程序;g++当做是C++程序;2、对于.cpp后缀的文件,gcc和g++都会当做c++程序。3、编译阶段,g++会调用gcc(也就是说);4、连接阶段,通常会用g++来完成,这是因为gcc命令不能自动和c++程序使用的库连接。 gcc可以用来编译c++但是它不会自动调用链转载 2016-05-20 00:51:26 · 517 阅读 · 0 评论 -
介绍一下Make? 为什么使用make?
1、包含多个源文件的项目在编译时有长而复杂的命令行,可以通过makefile保存这些命令行来简化该工作2、make可以减少重新编译所需要的时间,因为make可以识别出哪些文件是新修改的3、Make维护了当前项目中各文件的相关关系,从而可以在编译前检查是否可以找到所有的文件原创 2016-05-20 00:37:06 · 1284 阅读 · 0 评论 -
Ubuntu(Linux)使用Eclipse搭建C/C++编译环境
这两天,给自己电脑弄了双系统,除了原来的Windows 7系统外,装上了Linux系统,使用的版本是Ubuntu(点击可到相应的下载页面)。开始我装的Linux版本是fedora9,对于一个根本没接触过Linux系统的人而言,使用fedora,简直让人崩溃。更崩溃的是,我用的英文版。没的办法,又重新下载Linux,刻碟。装系统。装系统的时候也出了点问题,不过都是小问题,一下子就解决了,如果有人搜到转载 2016-05-26 23:42:50 · 3998 阅读 · 1 评论 -
Linux之编辑器Vim篇(配置与高级技巧)
一、Vim配置如果没有安装vim就请使用:sudo apt-get install vim一个完整的.vimrc配置信息如下所示:set nocompatibleset nummberfiletype onset history=1000set background=darksyntax onset autoi转载 2016-05-27 00:04:21 · 1477 阅读 · 0 评论 -
Linux C程序异常退出怎么办——core文件帮你忙
想必你一定遇到过Linux下程序异常退出的问题,异常退出貌似有一种神奇的魔力,会让你神经突然紧张。不要怕,Linux是很强大的,在程序退出的时候,会在可执行文件所在的目录生成一个core文件,它很好地记录了一些神秘而又必要的东西,帮助你定位到错误的根源,想想以前面试的时候人家闻到core文件,我答不上来,你说面试官会怎样想,那么就来说说core文件。core文件实际上就是一个内存映象同时加转载 2016-05-27 00:54:12 · 3251 阅读 · 0 评论 -
linux偶发性崩溃的程序该怎么调试 coredump gdb
在Unix/Linux系统上,有一种叫做 Core Dump 的文件,非常有用。Core dump 文件保存了一个进程异常终止之后的调试信息,能够提供给gdb。我们通过在gdb中加载这样的core dump文件,就相当于读取了程序刚刚异常终止的状态,从而把现场还原。好好利用core dump,你就可以知道为什么一个程序偶尔终止,偶尔正常,找出诡异情况的根源。转载 2016-05-27 01:01:03 · 2248 阅读 · 0 评论 -
Linux Core Dump
Linux Core Dump当程序运行的过程中异常终止或崩溃,操作系统会将程序当时的内存状态记录下来,保存在一个文件中,这种行为就叫做Core Dump(中文有的翻译成“核心转储”)。我们可以认为 core dump 是“内存快照”,但实际上,除了内存信息之外,还有些关键的程序运行状态也会同时 dump 下来,例如寄存器信息(包括程序指针、栈指针等)、内存管理信息、其转载 2016-05-27 01:07:35 · 585 阅读 · 0 评论 -
Linux core dump详解
有的程序可以通过编译, 但在运行时会出现Segment fault(段错误). 这通常都是指针错误引起的.以下是我们详细的对Linux core dump的调试技术进行的介绍:1.Linux core dump 前言:有的程序可以通过编译, 但在运行时会出现Segment fault(段错误). 这通常都是指针错误引起的.但这不像编译错误一样会提示到文件->行,而是没有任何信息, 使得转载 2016-05-27 01:09:17 · 943 阅读 · 0 评论 -
gcc命令
gcc命令使用GNU推出的基于C/C++的编译器,是开放源代码领域应用最广泛的编译器,具有功能强大,编译代码支持性能优化等特点。现在很多程序员都应用GCC,怎样才能更好的应用GCC。目前,GCC可以用来编译C/C++、FORTRAN、JAVA、OBJC、ADA等语言的程序,可根据需要选择安装支持的语言。语法gcc(选项)(参数)选项-o:指定生成的输出文件;-E:转载 2016-05-20 00:22:03 · 362 阅读 · 0 评论 -
linux下gcc下makefile文件的编写
假设我们有下面这样的一个程序,源代码如下:/* main.c */#include “mytool1.h”#include “mytool2.h”int main(int argc,char **argv){mytool1_print(“hello”);mytool2_print(“hello”);}/* mytool1.h */#ifndef _MYTOO转载 2016-05-20 00:33:36 · 717 阅读 · 0 评论 -
LINUX C++ 线程池简单实现之双队列
1 线程池原理 线程池的原理很简单,就是预先建立些空闲线程,并把它们投入睡眠中。当有任务到达时,就唤醒一个线程来处理,处理完后放回线程池中。因为线程池对空闲线程的维护,所以避免了对线程创建的开销,当频繁使用线程且处理工作量很小的情况下,使用线程池可以有效的提升系统性能。2 线程池实现线程池的实现主要分为四部分,线程的创建、添加任务到线程池中、子线程取出任务进行处理以转载 2016-06-03 20:59:21 · 1307 阅读 · 0 评论