http://www.itye.org/archives/3125 gcc 禁止warning 熟悉windows编程的人都知道,禁止编译器输出某个warning,在代码中可以这样 #pragma warning( disable 号码) 例如 #pragma warning(disable 4096) 这里的4096是warning的号码, 在gcc中warning是直接使用名字代表,而不是数字,例如 未使用的变量的 warning就是 -Wunused-variable gcc的禁止warn…
我怕我不写下来,将来我都不记得我还在 c 中嵌套过汇编语言,用汇编代码调用一个c函数的过程. 折腾了一下午,在网上查看相关的资料,然后照葫芦画瓢地在c代码中嵌套汇编,希望解决我所遇到的问题,可最后发现全是徒劳. 根据我的初步了解,在c中嵌套汇编来调用一个c函数的时候, 当c函数的参数过多时, 汇编代码没办法写, 好像对参数的数量有相当大的限制. 下面的代码,如果我将c函数的参数增加到3个时, 汇编代码我就写不出来了,  并不能通过简单的在汇编代码中增加一个参数来实现. 多增加一个参数,编译代码时…
原文网址:http://blog.csdn.net/lizzywu/article/details/9419145 各个层次的gcc警告从上到下覆盖 变量(代码)级:指定某个变量警告 int a __attribute__ ((unused));指定该变量为"未使用的".即使这个变量没有被使用,编译时也会忽略则个警告输出. 文件级:在源代码文件中诊断(忽略/警告) 语法: #pragma GCC diagnostic [error|warning|ignored] "-W&l…
各个层次的gcc警告从上到下覆盖 变量(代码)级:指定某个变量警告 int a __attribute__ ((unused));指定该变量为"未使用的".即使这个变量没有被使用,编译时也会忽略则个警告输出. 文件级:在源代码文件中诊断(忽略/警告) 语法:#pragma GCC diagnostic [error|warning|ignored] "-W<警告选项>"诊断-忽略:(关闭警告) #pragma  GCC diagnostic ignore…
在看公司公共库的头文件中发现了:#pragma GCC system_header一行,以前没有见过这种用法,在网上查了一下,解释如下: 从#pragma GCC system_header直到文件结束之间的代码会被编译器视为系统头文件之中的代码.系统头文件中的代码往往不能完全遵循C标准, 所以头文件之中的警告信息往往不显示.(除非用 #warning显式指明). 可以查看gcc参考手册:http://gcc.gnu.org/onlinedocs/cpp/System-Headers.html#…
Gcc 安装过程中部分配置详解 全文参考<have fun with Gcc>一文,如有需要请联系原作者prolj@163.com 解压gcc源码后,需要进行configure,这时候一般命令如下: srcdir/configure [options] [target] 你可以运行以下命令获得自己需要的options. configure –help Target默认是自己的本机环境,如果是交叉编译器,就需要指定这个参数了 --target=target 这个target一半是你m68k-co…
在CentOS 6.4中编译安装gcc 4.8.1 分类: C/C++ Linux/Unix2013-11-28 21:02 1877人阅读 评论(0) 收藏 举报 原文链接:http://www.cnblogs.com/codemood/archive/2013/06/01/3113200.html   1. 安装gcc和g++ 新安装的CentOS缺少编译环境,必须先安装旧版本的gcc, 然后再进行自举编译 yum -y install gccyum -y install gcc-c++  …
在Fedora24/25中轻松安装gcc 4.9 http://blog.csdn.net/u010158659/article/details/53608285 标签: gccgcc-4.9FedoraFedora25 2016-12-13 12:33 794人阅读 评论(0) 收藏 举报 分类: 细节(5) 版权声明:本文为博主原创文章,未经博主允许不得转载. 新版的Fedora(24/25)中预装了gcc-6.1 .在开发实践中,该版本的gcc与很多其它软件,如Cuda和Matlab等并不…
首先 --whole-archive 和 --no-whole-archive 是ld专有的命令行参数,gcc 并不认识,要通gcc传递到 ld,需要在他们前面加 -Wl,字串. --whole-archive 可以把 在其后面出现的静态库包含的函数和变量输出到动态库,--no-whole-archive 则关掉这个特性. 比如你要把 liba.a  libb.a libc.a 输出到 libabc.dll(或libabc.so)时应该这么写: libabc.dll:liba.c libb.a…
本周作业的主要内容就是采用gcc嵌入汇编的方式调用system call. 系统调用其实就是操作系统提供的服务.我们平时编写的程序,如果仅仅是数值计算,那么所有的过程都是在用户态完成的,但是我们想将变量打印在屏幕上,就必须调用printf,而printf这个函数内部就使用了write这个系统调用. 操作系统之所以以system call的方式提供服务,是因为如果程序员能够任意操作OS所有的资源,那么将无比危险,所以OS设计出了内核态和用户态. 我们平时编程都是在用户态下,如果我们想要调用系统资源…