1 Ubuntu下编译安装GCC-4.1.2

  • 拷贝gcc-4.1.2.tar.bz2(我下载的压缩文件)到/usr/local/src
  • 解压

新生成的gcc-4.1.2这个目录被称为源目录,用${srcdir}表示它。目标目录(用${objdir}表示)是用来存放编译结果的地方

  • 配置shell> ${srcdir}/configure --prefix=${destdir} [其它选项]

例如,如果想将GCC 4.1.2安装到/usr/local/gcc-4.1.2目录下,则${destdir}就表示这个路径。

root@w-ProLiant-ML350-Gen9:/usr/local/gcc-4.1.2# chmod a+x ../src/gcc-4.1.2/configure
root@w-ProLiant-ML350-Gen9:/usr/local/gcc-4.1.2# ../src/gcc-4.1.2/configure --prefix=/usr/local/gcc-4.1.2 --enable-threads=posix --disable-checking --enable--long-long --host=w-ProLiant-ML350-Gen9 --with-system-zlib --enable-languages=c,c++,java
root@w-ProLiant-ML350-Gen9:/usr/local/gcc-4.1.2# make
root@w-ProLiant-ML350-Gen9:/usr/local/gcc-4.1.2# make install

2 g++编译中参数-l-L含义

The "-l" tell the compiler to look for a library and the "-L" tells it where to do the search (which is what you are probably missing).

# 定位library的位置
shell> locate cutil_x86_64
/home/cho/NVIDIA_GPU_Computing_SDK/C/lib/libcutil_x86_64.a
# eg
shell> g++ -o application main.cpp -L/home/cho/NVIDIA_GPU_Computing_SDK/C/lib -lcutil

3 gdb设置和管理断点

  • setting breakpoint

    • 以条件表达式设置断点:break 7 if i==99
  • setting temporary breakpoint
    • tb line-number
  • 删除断点

clear : 删除程序中所有的断点

clear 行号 : 删除这行的断点

clear 函数名 : 删除该函数的断点

delete b_id1 b_id2 ... : 删除指定编号的断点

4 scons简单例子

SCons是一个开放源代码、以 Python 语言编写的下一代的程序建造工具。

# simple case of hello.c:
shell> ls
hello.c SConstruct
shell> cat SConstruct
Program('hello.c') shell> scons
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
gcc -o hello.o -c hello.c
gcc -o hello hello.o
scons: done building targets. shell> ls
hello hello.c hello.o SConstruct
  • 编译之后清除(-c或--clean): scons -c
  • 使Scons输出更简洁: scons -Q
  • 指定目标文件的名字: Program('new_filename','filename.c')
  • 编译多个源文件: Program(['prog.c','file1.c','file2.c'])
  • 关键字参数:
src_files=Split('main.c  file1.c  file2.c')
Program(target='program', source=src_files)

Linux下gcc,g++,gdb,scon部分用法笔记的更多相关文章

  1. Linux下gcc与gdb简介

    gcc编译器可以将C.C++等语言源程序.汇编程序编译.链接成可执行程序.gdb是 GNU 开发的一个Unix/Linux下强大的程序调试工具. linux下没有后缀名的概念.但 gcc 根据文件的后 ...

  2. Linux下gcc/g++中-I(i的大写)、-L和-l

    -I(i的大写)include头文件非标准库中存在的也不是在当前文件夹下的,需要将地址用-i(大写)包含例:-I /home/src/-L用到的函数或操作非标准库下的,需要将库存在的地址用-L包含,库 ...

  3. Linux下Ganglia集群监控安装、配置笔记

    http://www.blogjava.net/henry14/archive/2011/12/17/ganglia.html 枪声依旧 Linux下Ganglia集群监控安装.配置笔记 Gangli ...

  4. Linux gcc/g++下GDB调试及其调试脚本的使用

    GDB调试及其调试脚本的使用返回脚本百事通一.GDB调试 1.1. GDB 概述 GDB 是GNU开源组织发布的一个强大的UNIX下的程序调试工具.或许,各位比较喜欢那种图形界面方式的,像VC.BCB ...

  5. Linux下gcc与g++用法以及编写makefile

    1.         gcc与g++编译流程: 1)         编译流程: 2)         预处理:生成.i的预处理文件. Ø 只激活预处理,这个不生成文件,需要把它重定向一个输出文件. ...

  6. linux下gcc编译多个源文件、gdb的使用方法

    一. gcc常用编译命令选项 假设源程序文件名为test.c. 1. 无选项编译链接 用法:#gcc test.c 作用:将test.c预处理.汇编.编译并链接形成可执行文件.这里未指定输出文件,默认 ...

  7. Linux gcc和gdb程序调试用法 {转}

    gcc一般调试格式: gcc -Wall -o  test   test.c // -wall  显示程序错误详细信息      gcc -v  // 显示gcc的版本 gcc -o{1,2,3} t ...

  8. Linux 下 gcc 与 g++的差别

    参考网易博客者"静心"的博客--<gcc与g++的区别>结合自己的认识做出的个人领悟.(由于个人水平有限,难免会存在错误的地方,请见谅) 一般而言,在Linux下编译程 ...

  9. Linux下gcc和g++的区别

    首先编写了第一个C++程序,Hello,world! #include <iostream> using namespace std; void main() ...{ cout < ...

  10. linux下gcc编译的参数详细说明

    参考网址:1 http://hi.baidu.com/zengzhaonong/item/f1f9383565fa5c302e0f8125 gcc使用方法 汇总 2 http://s99f.blog. ...

随机推荐

  1. 【推荐】30个Matlab视频教程合集(含GUI视频教程)下载

    自己收集别人网盘上存的资源,分享一下[点击文件名可得到下载地址]        Matlab 7.8 基础视频教程 实例1 数据传递和多窗口编程_avi.zip 205.11 MB   Matlab ...

  2. 数组自定义排序:IComparable和IComparer接口

    首先先说一下IComparable和IComparer的区别,前者必须在实体类中实现,后者可以单独出现在一个排序类中,即此类只包含一个compare方法. Array类使用快速算法对数组中的元素进行排 ...

  3. Binder机制,从Java到C (大纲)

    转载请标注:张小燕:http://www.cnblogs.com/zhangxinyan/p/3487381.html 前段时间一直在看有关Binder机制的内容,觉得受益匪浅,整理记录于此,大家请随 ...

  4. JS 浏览器检测

    原创博文,转载请注明出处. 如果你现在还是一个JavaScript新手(比如本人,哈哈 ),由于浏览器的兼容问题,很容易写出不兼容的JS代码,这就需要我们对浏览器进行检测. JavaScript Na ...

  5. [Usaco2008 Feb]Meteor Shower流星雨[BFS]

    Description 去年偶们湖南遭受N年不遇到冰冻灾害,现在芙蓉哥哥则听说另一个骇人听闻的消息: 一场流星雨即将袭击整个霸中,由于流星体积过大,它们无法在撞击到地面前燃烧殆尽, 届时将会对它撞到的 ...

  6. Scrum与高效能人士的执行4原则

    Scrum与高效能人士的执行4原则 分享了高效能人士的执行4原则,发现它和Scrum非常相近,可以形成互补. Scrum框架: 高效能人士的执行4原则框架: Scrum与4原则 Sprint Back ...

  7. 【July】从头到尾彻底理解KMP

    从头到尾彻底理解KMP 作者:July时间:最初写于2011年12月,2014年7月21日晚10点 全部删除重写成此文,随后的半个多月不断反复改进. 1. 引言 本KMP原文最初写于2年多前的2011 ...

  8. - 高级篇:二,IL设置静态属性,字段和类型转换

    - 高级篇:二,IL设置静态属性,字段和类型转换 静态属性赋值 先来看 Reflector反射出的IL源码(感谢Moen的提示),这次用 Release模式编译,去掉那些无用的辅助指令 public ...

  9. MFC控件(8):command button与syslink control

    在VS 2008里MFC多了4种控件,分别是 split buttons ,command button , syslink controls和 network address controls. s ...

  10. while循环的基本用法

    while是常用的循环结构之一 1.格式: while(条件){ } 2.基本知识点 1)puts(“字符串”).换行输出一个字符串 2)死循环.. while(1){ } 代码如下: