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. JQuery UI Layout Plug-in布局

    端]使用JQuery UI Layout Plug-in布局   引言 使用JQuery UI Layout Plug-in布局框架实现快速布局,用起来还是挺方便的,稍微研究了一下,就能上手,关于该布 ...

  2. web 富文本编辑器总结

    前言 富文本编辑器,就是除了能输入不同的文本之外,还可以之间粘贴图画等其他的多媒体信息.也可说是所见即所得的编辑器. 目前可以使用的编辑器有很多, 在网络上有找到这样一份比较表格: 编辑器 产地 稳定 ...

  3. GitHub 简易使用

    笔记内容 学习笔记-段玉磊 Github Github 命令 写这篇文章主要写一下如何运用终端命令,进行Git的配置以及使用,由于本人我不太习惯使用图形IDE,效率没有命令行高,我还是推荐使用命令行进 ...

  4. .NET面试问答集锦

    程序员级别鉴定书(.NET面试问答集锦) 提供避免元素命名冲突的方法 DOM适合的使用场景是什么?是否有尺寸限制? DOM是一种与浏览器,平台,语言无关的接口,使你可以访问页面其他的标准组件. DOM ...

  5. Nginx+phpfastcgi下flush输出问题

    最近由于业务需要,需要使用php的flush输出缓存刷新,处理浏览器超时问题. 最初的测试代码如下: ob_start();//打开缓冲区 for ($i=10; $i>0; $i--) { e ...

  6. 【Apache ZooKeeper】命令行zkCli.sh使用指南

    ZooKeeper命令行 原文                   http://blog.csdn.net/ganglia/article/details/11606807 ZooKeeper客户端 ...

  7. Hibernate:如何映射聚合?

    Hibernate:如何映射聚合? 目录 背景映射聚合聚合模型映射配置测试备注 背景返回目录 DDD 是在 Hibernate 之后发现的概念,Hibernate 如何映射 DDD 中的聚合呢?本文给 ...

  8. 关于C#中readonly

    关于C#中readonly的一点小研究 关于C#中readonly的一点小研究   可能园子里有不少文章已经说明了这个问题了,但是我在这里写这篇博客只是写写自己的一些体会,也权当是整理归纳,高手莫见笑 ...

  9. MongoDB学习(翻译5)

    C#驱动序列化文档对象 介绍 本文档基于C#官方驱动1.8版本. 本节C#驱动教程谈论C#类到BSON对象的序列化和反序列化.序列化是映射一个对象到可保存到MongoDB库中BSON对象的过程,反序列 ...

  10. jquery以及js实现option左移右移

    <table cellspacing="1" width="350px" align="center"> <tr> ...