![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
gcc
文章平均质量分 61
sourthstar
这个作者很懒,什么都没留下…
展开
-
在ubuntu下开发window应用程序
1. 首先要搭建mingw交叉编译环境: mingw32 sudo apt-get install mingw32 执行后它会自动安装mingw32, mingw32-binutils, mingw32-runtime三个软件包。 可以用 dpkg -l | grep mingw 来查看所有包括mingw的软件原创 2012-07-11 11:41:13 · 1164 阅读 · 0 评论 -
查看gcc编译链接的过程
http://www.newsmth.net/bbsanc.php?path=%2Fgroups%2Fcomp.faq%2FKernelTech%2FKernelStudy%2FM.1191825232.60gcc -v -o xx xx.c会显示gcc的编译的所有过程。显示如下:g++-4.6 -v -o aa aa.cpp -lpython2转载 2012-09-15 13:49:05 · 2107 阅读 · 0 评论 -
支持c++11标准的编译器对比
C++11各编译器支持情况对比http://www.20ju.com/content/V224898.htmC++11标准在去年8月份获得一致通过,这是自1998年后C++语言第一次大修订,对C++语言进行了改进和扩充。迄今为止已整整一年啦!想知道C++11在这一年里的发展情况如何吗?本文我们一起来看下C++11在VS11 (Visual Studio 2012)、g+转载 2012-09-15 16:38:57 · 1339 阅读 · 0 评论 -
测试编译器是否支持C++11新特性(1)
http://my.oschina.net/u/186539/blog/5807401/*- ==========================================================02* 文件名 :TestCpp11_1.cpp03转载 2012-09-15 16:40:39 · 2845 阅读 · 0 评论 -
修改gcc的默认配置参数
http://www.adintr.com/mytranslate/gcc_spec_files.htmlgcc 是一个驱动式的程序. 它调用其它程序来依次进行编译, 汇编和链接. GCC 分析命令行参数, 然后决定该调用哪一个子程序, 哪些参数应该传递给子程序. 所有这些行为都是由 SPEC 字符串(spec strings)来控制的. 通常情况下, 每一个 GC转载 2012-10-07 18:49:04 · 9036 阅读 · 0 评论 -
GCC Spec修改N例
http://blog.chinaunix.net/uid-796091-id-2035333.htmlhttp://blog.csdn.net/challen537/article/details/7173512其实简单来说,gcc spec文件是用来控制gcc的默认行为的,一般被放在这个目录下可以找到这个文件:# cd /x86toolcha转载 2012-10-07 18:59:29 · 2255 阅读 · 0 评论 -
探索c++0x: 0.开始
来源:http://www.cppblog.com/thesys/articles/116983.htmlc++0x是下一代c++标准,原计划于2010前推出,所以命名为c++0x(比如c++09),现在已经2010年了,都还没有最终定稿,因此我们只能无奈地认为这0x代表的是16进制了,也暗合c/c++中0x代表16进制前缀的习惯,不过如果2015年还没搞定的话,就不知道可以怎么解释了。转载 2012-09-15 17:06:53 · 593 阅读 · 0 评论 -
busybox编译时编译器的选择
busybox编译成arm平台的二进制文件时,需要注意编译器选项。推荐使用codesourcery提供的交叉编译器,它默认提供的-march参数是 armv5te. 而ubuntu软件包中的交叉编译器默认的march参数是armv7-a. 具体的参数区别如下: codesourcery:Using built-in specs.Target: arm-no原创 2012-10-08 13:59:31 · 1323 阅读 · 0 评论 -
arm-linux-cross compile chain building
http://blog.csdn.net/pandazhu/article/details/693930ARM-Linux Cross-Compile Chain - Building From Scratch(binutils 2.16.1, gcc 3.4.5, glibc-2.3.5, Kernel 2.6.15)Author:Zhu Zhenyong Dat转载 2012-09-19 16:04:18 · 3155 阅读 · 0 评论 -
c++0x 可变参数模板
C++ 11 tuple & 可变参数模板人是生而的,但却无往不在枷锁之中。自认为是其他一切的主人的人,反而比其他一切更是奴隶。 C++ 11中引入的tuple是一个N元组。它相当于有N个成员的布局体,只不过这个布局体的成员都是匿名的。tuple中有两个特别的函数,一个是head(),用于获取第一个成员的值,另一个是tail(),用于获取剩下所有成员的值,tail()本身又是一个tu转载 2012-09-21 18:58:53 · 1223 阅读 · 0 评论 -
c++0x lambda表达式
分享C++0x语言新特性一览(2)(转自维基百科)来源:李皓骅的日志 Lambda functions and expressions Lambda函数及表达式 在标准C++语言中,尤其在使用诸如sort和find之类的标准库算法函数时,用户总是希望在算法函数调用的触发点附近定义谓词函数。在这一方面语言中只有一种机制可供利用:在函数中定义类。通常这种做法既啰嗦又笨重。另外,转载 2012-09-21 18:59:50 · 1346 阅读 · 0 评论 -
9 个开始使用 C++11 的理由
9 个开始使用 C++11 的理由 如果你的代码工作正常并且表现良好,你可能会想知道为什么还要使用C++ 11。当然了,使用用最新的技术感觉很好,但是事实上它是否值得呢? 在我看来,答案毫无疑问是肯定的。我在下面给出了9个理由,它们分为两类:性能优势和开发效率。获得性能优势理由1:move语义(move semantics)。简单的说转载 2012-09-21 19:00:51 · 427 阅读 · 0 评论 -
C++0x 学习笔记之 Variadic Templates
C++0x 学习笔记之 Variadic Templatesby feng in programming Variadic Templates 的引入,消去了烦冗的模板特化。一个例子:123456789101112131415161718192021转载 2012-09-21 19:18:23 · 739 阅读 · 0 评论 -
g++对c++0x/c++11的标准支持度
http://gcc.gnu.org/projects/cxx0x.htmlC++0x/C++11 Support in GCCC++0x was the working name of a new ISO C++ standard, which was then released in 2011 as C++11 and introduces a host of ne转载 2012-09-22 16:05:19 · 3755 阅读 · 0 评论 -
编译busybox--制作linux文件系统
reference: http://blog.sina.com.cn/s/blog_5248460001013dqn.html文件系统:1.Uboot:启动内核2.内核:启动应用程序3.应用程序,构建:根文件系统;内核怎样启动第一个应用程序?1.启动open(/dev/console sys_dup(),sys_dop(0))2.run_init_pro转载 2012-11-02 21:06:06 · 520 阅读 · 0 评论 -
armel与armhf
http://blog.chinaunix.net/uid-9525959-id-3293283.htmlarmel和armhf指得是arm体系中有fpu(浮点运算单元)的,有的arm没有fpu,则不能有armel和armhf两种使用fpu的方式了。armhf比armel硬件要求(确切的是指fpu硬件)高一点。如果fpu硬件,达到要求转载 2013-02-01 10:10:32 · 852 阅读 · 0 评论 -
C++异常机制的实现方式和开销分析
转载自: http://baiy.cn/doc/cpp/inside_exception.htm在我几年前开始写《C++编码规范与指导》一文时,就已经规划着要加入这样一篇讨论 C++ 异常机制的文章了。没想到时隔几年以后才有机会把这个尾巴补完 :-)。还是那句开场白:“在恰当的场合使用恰当的特性” 对每个称职的 C++ 程序员来说都是一个基本标准。想要做到这点,就必须转载 2012-09-15 14:39:59 · 574 阅读 · 0 评论 -
at linux show execute file symbol table
nm -D xxx.sonm xxxx.aobjdump -T xxx.soobjdump -s xxxx.a原创 2012-09-14 11:46:23 · 449 阅读 · 0 评论 -
ffmpeg移植到android平台
http://blog.csdn.net/perfectpdl/article/details/6932696一:生成动态库(.so文件)-->环境:操作系统:Ubuntu9.10ffmpeg源码版本:ffmpeg-0.6.1(可以在http://ffmpeg.org/download.html 下载源码)androidndk版本转载 2012-07-25 13:23:37 · 643 阅读 · 0 评论 -
交叉编译arm平台的qt库
参考文章:http://doc.qt.nokia.com/4.7-snapshot/qt-embedded-crosscompiling.htmlhttp://labs.qt.nokia.com/2009/09/10/cross-compiling-qtx11/http://www.qtforum.org/article/38189/corss-compile-for-arm.ht原创 2012-07-25 13:17:40 · 835 阅读 · 0 评论 -
mingw32分析pe文件
objdump=i586-mingw32msvc-objdumpcc=i586-mingw32msvc-gccexe=./aa.exe编译gui程序:$cc -mwidows -o aa.exe aa.c编译console程序:$cc -o aa.exe aa.c生成汇编代码:$cc -o aa.S -s aa.c原创 2012-07-26 12:19:36 · 658 阅读 · 0 评论 -
gcc编译优化参数
http://www.linux-ren.org/thread-94-1-1.htmlGCC编译器选项及优化提示大多数程序和库在编译时默认的优化级别是"2"(使用gcc选项:"-O2")并且在Intel/AMD平台上默认按照i386处理器来编译。如果你只想让编译出来的程序运行在特定的平台上,就需要执行更高级的编译器优化选项,以产生只能运行于特定平台的代码转载 2012-08-11 17:46:07 · 3156 阅读 · 0 评论 -
linux下gcc相用编译器选项
gcc常用编译选项http://blog.csdn.net/liuchao1986105/article/details/6674822 版本] -0.13 [声明] 这篇文档是我的关于gcc参数的笔记,我很怀念dos年代我用小本子,纪录任何的dos 命令的参数.哈哈,下面的东西可能也不是很全面,我参考了很多的书,和gcc的帮助.不全的原因是,有转载 2012-08-11 19:47:15 · 2588 阅读 · 0 评论 -
代码覆盖率测试,gcov, lcov
代码覆盖工具gcov, lcov的一些使用经验 白盒测试 11 Responses »一 202011 http://magustest.com/blog/tag/gcov/http://blog.sina.com.cn/s/blog_5ddb672b0100bn0z.htmlhttp://hi.baidu.com/xiaohei9514/item/25ae转载 2012-07-30 11:44:23 · 1922 阅读 · 1 评论 -
手动编译ubuntu内核
1. 首先下载git版 的内核.2. 进入kernel目录, cp /boot/config-xxx .config3. make menuconfig 全部选y4. make -j8 bzImage make -j8 modules sudo make -j8 modules_原创 2012-08-29 18:20:59 · 645 阅读 · 0 评论 -
uboot.lds分析
http://hi.baidu.com/kkernel/item/d821c3f8b06e9b1da729886c对于.lds文件,决定一个可执行程序的各个段的存储位置,以及入口地址,这也是链接定位的作用。这里以u- boot的lds为例说明uboot的链接过程。首先看一下GNU官方网站上对.lds文件形式的完整描述:SECTIONS {...sec转载 2012-08-20 14:48:38 · 423 阅读 · 0 评论 -
gcc选项--显示include的路径
gcc 生成map文件:gcc -Wl,-Map,xx.map ...gcc 生成include路径文件gcc -MDgcc -MMDGCC 2 url: http://www.shanghai.ws/gnu/gcc_2.htmSection: GNU Tools (1)Updated: 2003/12/05Supporter:转载 2012-07-11 11:26:36 · 3431 阅读 · 0 评论 -
socket常用选项
http://blog.csdn.net/arescj/article/details/62333271.closesocket(一般不会立即关闭而经历TIME_WAIT的过程)后想继续重用该socket:BOOL bReuseaddr=TRUE;setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const char*)&bReuseaddr,s转载 2012-09-07 09:52:34 · 636 阅读 · 0 评论 -
基于Socket的UDP和TCP编程介绍
http://www.eefocus.com/ayayayaya/blog/09-11/180572_25362.html一、概述TCP(传输控制协议)和UDP(用户数据报协议是网络体系结构TCP/IP模型中传输层一层中的两个不同的通信协议。TCP:传输控制协议,一种面向连接的协议,给用户进程提供可靠的全双工的字节流,TCP套接口是字节流套接口(stream转载 2012-09-07 09:54:59 · 414 阅读 · 0 评论 -
socket通过多网卡收发数据
1. 通过bind机制, socket必须要调用bind才能发送tcp包。 bind调用时需要一个ip地址。一般一台机器的多网口都要配置不同的ip地址(路由器除外,路由器是一个网桥设备,只是负责转发包,所以其它的端口一般没有ip地址)。2. 通过ioctl来设置打开的socket. (ioctl (fd, SIOCGIFINDEX, &ifr)==0;TCP编程转载 2012-09-07 09:48:11 · 14752 阅读 · 0 评论 -
SOCKET编程之INADDR_ANY
SOCKET编程之INADDR_ANYhttp://blog.sina.com.cn/s/blog_6874564c0100jrvf.htmlINADDR_ANY就是指定地址为0.0.0.0的地址,这个地址事实上来表示不确定地址,或“所有地址”,“任意地址”。一般来说,在各个系统中均定义成为0值。例如:MontiVistaLinux中在/usr/inlcude/neti转载 2012-09-07 10:20:07 · 936 阅读 · 0 评论 -
在多个网卡的机器上利用socket进行网络测试的问题
http://www.linuxforum.net/forum/showflat.php?Cat=&Board=program&Number=641137&fpart=all用的是arm的嵌入式板子,内核用的是linux-2.6.19,有四块dm9000网卡。系统起来之后用ifconfig配置eth0-eth3不同的ip地址/mac地址,然后用socket监听四个不同的端口(5转载 2012-09-07 10:31:37 · 2702 阅读 · 0 评论 -
DejaGnu/EGLIBC
http://blog.csdn.net/yzlworld/article/details/5797511最近工作中要测试自己编译的交叉编译工具链,所以就在网络上查找了一下,有关工具链的测试方法。恰好发现对这些交叉编译时需要测试的一些软件包的测试工具,赶紧网上找些资料学习一下了。dejaGnu就是一个很好的工具,用来测试gcc,gdb,和binutils三个软件包。而EGLIBC可转载 2013-02-01 10:47:30 · 983 阅读 · 0 评论