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

网站建设公司小程序首饰设计网站推荐

网站建设公司小程序,首饰设计网站推荐,沈阳网站优化公司,外贸网站建设平台有哪些目录 前言 gcc/g的使用 1. 语言的发展 1.1 语言和编译器自举的过程 1.2 程序翻译的过程#xff1a; 2. 动静态库的理解 Linux项目自动化构建工具-make/makefile 1. 快速上手使用 2. makefile/make执行顺序的理解 前言 了解完vim编辑器的使用#xff0c;接下来就可以尝…目录 前言 gcc/g的使用 1. 语言的发展 1.1 语言和编译器自举的过程 1.2 程序翻译的过程 2. 动静态库的理解 Linux项目自动化构建工具-make/makefile 1. 快速上手使用 2. makefile/make执行顺序的理解 前言 了解完vim编辑器的使用接下来就可以尝试写一写代码啦本期我将会向大家介绍Linux环境下gcc/g的使用方法以及一些使用技巧。 gcc/g的使用 在此之前我们需要先了解一下语言的发展以便于我们更好的理解程序编译的过程。 1. 语言的发展 编程语言的发展历程 二进制汇编C语言诞生C、python、Java … 1.1 语言和编译器自举的过程 二进制 ——用二进制写汇编编译器然后就可以通过汇编语言编写汇编语言的编译器使用汇编语言编写C语言编译器再用C语言编写C语言的编译器……不断向后迭代 1.2 程序翻译的过程 预处理 头文件展开 去注释 宏替换 条件编译 gcc -E code.c -o code.i 从现在开始进行程序的翻译过程当预处理做完的时候就停下来 -E预处理 -o 生成指定临时文件.i文件 gcc code.c -o code.exe -D N1 -D 指定值 Linux环境下我们可以给编译器不同的宏值来进行对代码的裁减 编译 C语言转换为汇编语言 gcc -S code.i -o code.s 从现在开始进行程序的翻译当编译做完的时候就停下来 汇编 汇编语言翻译成二进制可重定位目标二进制文件 gcc -c code.s -o code.o -c汇编做完就停下来 链接 生成.o文件以后并不能执行即使有可执行权限 gcc -o code code.o -o 指定生成的文件 2. 动静态库的理解 查看文件链接的库 ldd [可执行文件] libc-2.17.so  也就是C标准库 库分为两类 平台LinuxWindows动态库.so.dll静态库.a.lib 平台要支持开发就必须提前在系统中安装 语言的标准头文件库文件 动静态库本质就是文件 动态库在程序运行时被加载到内存中程序可以共享同一个库文件 优点比较节省资源不会出现太多重复代码 缺点对库的以来较强一旦库文件丢失使用该库的程序都无法运行 静态库将自己需要的代码拷贝到自己的可执行程序中程序运行时不需要额外的库文件导致可执行文件较大 优点不依赖库同类型平台中都可以直接运行使用 缺点可执行程序体积比较大比较浪费资源 使用静态库编译代码 gcc -o [指定文件名] code.c -static 查看Linux系统中是否有静态库 ls /lib64/libc.a 显示没有文件就没有安装一般情况下系统默认都不会安装 Centos 7 yum 安装静态库 指令 sudo yum install -y glibc-static libstdc-static 安装成功之后可以再次使用上述指令进行验证 Linux项目自动化构建工具-make/makefile make 是一个命令makefile 是一个文件 makefile文件保存的是依赖关系和依赖方法 1. 快速上手使用 编写一个code.c文件 手动创建一个名为Makefile的文件文件名必须是Makefile 打开文件输入进行写入 执行make指令就可以自动将代码进行编译 什么是依赖关系和依赖方法 举个例子 我们与父母我们和父母之间就是依赖关系没有生活费时我们找父母要生活费打电话给父母确认依赖关系向父母要生活费就是具体的依赖方法。 依赖关系为什么帮你 依赖方法怎么帮 语法 当我们不修改项目的代码时多次执行make就会出现这种情况 清理掉项目生成的可执行文件即可可以对一个项目编译那我们也要对一个项目进行清除如何清除 只需在第一个目标文件下边重新添加一个 依赖方法删除文件 使用 make 目标文件 那为什么mybin就可以不指明目标文件 Makefile和make形成文件的时候默认是从上到下扫描makefile文件默认形成第一个目标文件 在重复执行的时候会显示当前的目标文件已经是最新的那make和makefile是如何知道可执行程序是比较新的呢 这个其实是通过对比时间比起来的只要可执行程序的最近修改时间比所有源文件的最近修改时间新说明它就是最新的 stat指令可以查看文件的相关时间 其中 Modify是修改文件内容的时间Change是文件属性改变的时间 它们有什么不同 文件 内容 属性 Modify对应的是文件内容修改Change对应的是文件属性修改 但是在修改文件的内容时我们会发现Change也会发生改变这是因为我们在修改文件内容时文件的大小文件属性也会发生改变。 Access在访问一定次数时才会进行更新为了提高工作效率在日常操作中会大量的访问文件访问频次远超于Modify和Change 知识补充 touch命令还可以对文件acm是Access、Change、Modify缩写的时间进行刷新不存在的文件它会进行创建 为了解决多次执行时不进行操作的问题可以使用.PHONY:修饰 # .PHONY:修饰mybin目标文件成为一个伪目标总是被执行 注意.PHONY一般都是修饰clean操作的 这样就可以连续重复的执行 这个机制是Linux中为了防止同个程序被反复编译。 例如在日常工作中一个项目有很多代码makefile文件中存放了许多程序的编译指令编译一次可能就要二十多分钟如果哪个模块出了问题进行了修改调试效果时如果都重新编译就要编译二十多分钟所以为了提高效率在Linux中只有被修改后才可以重新编译并且只会对修改的部分进行重新编译、链接。 2. makefile/make执行顺序的理解 它的执行过程也是一个类似递归的过程先进后出先进入执行直到找到最终的文件然后开始逆向执行 make/makefile的用法还有很多这里就不再进行深入介绍本文只是对make/makefile一些基本常见的内容进行介绍 总结 本文介绍的gcc/g以及make/makefile都是在日常工作中常用的工具make和makefile用于自动化构建过程特别是在大型项目中。熟悉和掌握这些工具的基本用法对于软件开发人员来说也是非常重要的以上便是本文的全部内容最后感谢阅读
http://www.w-s-a.com/news/385876/

相关文章:

  • 做网页怎么建站点视频解析网站
  • 做网站的系统设计网站设计论文前言
  • 做外贸网站多久更新汕头市建设局网站首页
  • 如何建设专业化的网站手机管理网站模板
  • 花生壳做网站如何用腾讯云做网站
  • 搭建集团网站开发app需要哪些软件
  • 网站建设 中企动力福州阀门wordpress 多说评论
  • php网站集成支付宝接口下载免费网络软件
  • 卡盟网站是怎么建设的用花生壳做网站速度可以吗
  • 杭州物联网前十名公司优秀seo平台
  • 网新中英企业网站管理系统wordpress 登录 缓存
  • wordpress模板建站教程wordpress添加广告位手机自适应
  • h5游戏平台入口优化是什么梗
  • 建设银行对公网站打不开网络推广活动方案主题和思路
  • 茶叶网站开发目的和意义网页设计需要考什么证
  • 高端企业网站建设公司怎么做实用性建设网站都需要哪些
  • 网站备案必须要幕布吗易企秀网站怎么做轮播图
  • 南昌网站排名优化四线城市网站建设方向及营利点
  • 做网站需要钱吗unity 做网站
  • 呼伦贝尔市规划建设局网站wordpress怎么考别人的
  • 免备案自助建站网站成都神速建站
  • 怎样编写app软件快速刷排名seo软件
  • 江苏做家纺的公司网站宣传型企业网站
  • 网站网上商城建设外国一些做环保袋的网站
  • 做空气开关那个网站推广比较好建站技术有哪些
  • 做网站前需要做什么准备wordpress图片云储存
  • 查楼盘剩余房源的网站地方网站推广
  • 农家乐网站建设方案创意平面设计公司简介
  • 信息化建设 网站作用网络营销的形式网站营销
  • 沈阳出名网站潍坊正规建设网站