当前位置: 首页 > news >正文

wordpress查看原图/seo前景

wordpress查看原图,seo前景,门户网站开发jz190,人人做网站gcc流水日志 如有不当,欢迎拍砖。索引部分,版权归原作者所有 1>gcc基本用法 代码文件有src1.c src2.c src3.c src4.c 头文件有src1.h src2.h src3.h src4.h 他们都在当前工作目录 一步到位的gcc写法: gcc src1.c 输出a.out gcc src1.c -o …

gcc流水日志
如有不当,欢迎拍砖。索引部分,版权归原作者所有
1>gcc基本用法

代码文件有src1.c src2.c src3.c src4.c
头文件有src1.h src2.h src3.h src4.h
他们都在当前工作目录

一步到位的gcc写法:
gcc src1.c
输出a.out
gcc src1.c -o src_tar
输出src_tar
其实是分成四步进行的:
预处理,编译成汇编代码,汇编成目标文件,链接
gcc -E src1.c -o src1.i
gcc -S src1.i -o src1.s
gcc -c src1.s -o src1.o
gcc src1.o -o src_tar

如果是多个文件也是按照上面四步进行的,有的时候代码文件之间存在依赖关系,必须放在一块进行
e.g gcc src1.c src2.c -o src_tar

gcc -Wall :给出所有的警告
gcc -Werror:编译到有警告的地方,就停止编译。

如果头文件所在的路径并不在gcc的搜索范围之内,编译成目标文件时需要加上
–I +头文件的路径 e.g:/usr/dev/mysql/include
编译成最终执行文件时需要加上
–L +库文件的路径,并+ ‘-l库的名字’ e.g:/usr/dev/mysql/lib –lmysqlclient
–static 强制编译器进行静态链接

PS:如果要是写在makefile中,在最后链接成可执行文件的时候,如果用到动态链接库,千万记得加上”-l库文件名“,这样可以节约你很长时间(手动滑稽__)

2>库文件连接
开发软件时,完全不使用第三方函数库的情况是比较少见的,通常来讲都需要借助许多函数库的支持才能够完成相应的功能。从程序员的角度看,函数库实际上就是一些头文件(.h)和库文件(so、或lib、dll)的集合。。虽然Linux下的大多数函数都默认将头文件放到/usr/include/目录下,而库文件则放到/usr/lib/目录下;Windows所使用的库文件主要放在Visual Stido的目录下的include和lib,以及系统文件夹下。但也有的时候,我们要用的库不再这些目录下,所以GCC在编译时必须用自己的办法来查找所需要的头文件和库文件。
例如我们的程序test.c是在linux上使用c连接mysql,这个时候我们需要去mysql官网下载MySQL Connectors的C库,下载下来解压之后,有一个include文件夹,里面包含mysql connectors的头文件,还有一个lib文件夹,里面包含二进制so文件libmysqlclient.so
其中inclulde文件夹的路径是/usr/dev/mysql/include,lib文件夹是/usr/dev/mysql/lib
1编译成可执行文件
首先我们要进行编译test.c为目标文件,这个时候需要执行
gcc –c –I /usr/dev/mysql/include test.c –o test.o
2链接
最后我们把所有目标文件链接成可执行文件:
gcc –L /usr/dev/mysql/lib –lmysqlclient test.o –o test
Linux下的库文件分为两大类分别是动态链接库(通常以.so结尾)和静态链接库(通常以.a结尾),二者的区别仅在于程序执行时所需的代码是在运行时动态加载的,还是在编译时静态加载的。
3强制链接时使用静态链接库
默认情况下, GCC在链接时优先使用动态链接库,只有当动态链接库不存在时才考虑使用静态链接库,如果需要的话可以在编译时加上-static选项,强制使用静态链接库。
在/usr/dev/mysql/lib目录下有链接时所需要的库文件libmysqlclient.so和libmysqlclient.a,为了让GCC在链接时只用到静态链接库,可以使用下面的命令:
gcc –L /usr/dev/mysql/lib –static –lmysqlclient test.o –o test
静态库链接时搜索路径顺序:

  1. ld会去找GCC命令中的参数-L
  2. 再找gcc的环境变量LIBRARY_PATH
  3. 再找内定目录 /lib /usr/lib /usr/local/lib 这是当初compile gcc时写在程序内的
    动态链接时、执行时搜索路径顺序:
  4. 编译目标代码时指定的动态库搜索路径
  5. 环境变量LD_LIBRARY_PATH指定的动态库搜索路径
  6. 配置文件/etc/ld.so.conf中指定的动态库搜索路径
  7. 默认的动态库搜索路径/lib
  8. 默认的动态库搜索路径/usr/lib
    有关环境变量:
    LIBRARY_PATH环境变量:指定程序静态链接库文件搜索路径
    LD_LIBRARY_PATH环境变量:指定程序动态链接库文件搜索路径

如有不当,欢迎拍砖。索引部分,版权归原作者所有
感谢~参考链接

http://www.cnblogs.com/ggjucheng/archive/2011/12/14/2287738.html

转载于:https://www.cnblogs.com/jshdaxia/p/5881022.html

http://www.jmfq.cn/news/5239513.html

相关文章:

  • wordpress个人版/seo研究协会网是干什么的
  • 南海网站建设/技师培训
  • 有哪些微信开发公司/厦门seo新站策划
  • 免费搭建手机自助网站/青岛运营网络推广业务
  • 独立电商网站/百度推广的优势
  • 怎么注册网站挣流量/怎么看百度指数
  • 网站建设及/seo排名点击器
  • 办个网站卖什么好处/网站软文代写
  • 如何做点击赚钱的网站/企业网站建设方案书
  • 如何找有需求做网站的公司/排名优化推广
  • 深圳十大平面设计公司排名/百度seo规则最新
  • 网站界面设计方案/做百度推广一个月多少钱
  • 营销型网站建设一般要多少钱/市场调研报告的基本框架
  • 佛山市网站建设公司/西安做网站
  • 域名过期做的网站怎么办/网络营销都具有哪些功能
  • 站外推广营销方案/seo网站优化服务
  • 新东阳建设集团网站/电商网站建设制作
  • 平度做网站公司/创建网址快捷方式
  • 邳州徐州网站开发/线上推广的三种方式
  • 网站拓展关键词怎么做/专业seo服务商
  • oss做网站/搜索引擎优化自然排名
  • 修改wordpress登录背景图/seo引擎优化方案
  • wordpress如何给头部加个搜索/怎么卸载windows优化大师
  • 济南城乡建设委员会官网/安卓优化大师老版本
  • 做网站怎样办营业执照/广告设计与制作
  • 网站如何实现qq登录功能/查网站是否正规
  • 供应商管理的五步流程/抚顺优化seo
  • 织梦网站地图如何做/青岛新闻最新消息
  • 钟楼网站建设/广州seo服务外包
  • 网站的首屏 一屏 二屏是什么意思/手机怎么做网站