博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
makefile的学习
阅读量:4288 次
发布时间:2019-05-27

本文共 837 字,大约阅读时间需要 2 分钟。

          准备转到做C++游戏服务器去了,所以就必须学习一些关于C++的编译和链接了,否则怎么编译和链接都不知道,又谈何开发呀。

          在linux下进行单文件的编译,一般而言,我们是这样写命令的,比如我们需要编译一个文件server.c,那么在命令行下我们会敲下:gcc  server.c -o server

          这样我们就完成了文件的编译和链接,没错,单个文件的时候我们是这样执行命令就OK了,但是当我们是一个项目的时候,我们的项目是由许许多多的文件

         组成的,那样再用这样的一个命令就想完成编译和链接是不行的,当然我们可以单个文件一个一个编译好,然后再链接成可执行执行文件,但这样还是费劲了。

       这时,我们强大的武器就来了,make工具,只需要编写一个makefile或MakeFile文件,然后在存在make工具的前提下,执行make命令就可以完成多个文件的编译

和链接。

 关于makefile文件的编写

       新建一个文件,这个文件不需要后缀名,将该文件命名为makefile即可

      写法:

     目标文件:依赖文件1 依赖文件2 

             shell编译命令

      这里要注意的是第一行依赖关系要顶格写,行开头不许存在空格什么的。

     第二行为shell的编译命令,这一行必须是以tab键开头

     例子:

     server:Socket.o ServerSocket.o ChatServer.o

          g++ Socket.o ServerSocket.o ChatServer.o -o server
      Socket.o:Socket.h Socket.cpp
           g++ Socket.cpp -c
      ServerSocket.o:ServerSocket.h ServerSocket.cpp
          g++ ServerSocket.cpp -c
      ChatServer.o:ChatServer.cpp
           g++ ChatServer.cpp -c

在项目下放置这样的一个makefile文件,切换到项目下,执行make命令即可完成编译和链接

转载地址:http://zxtgi.baihongyu.com/

你可能感兴趣的文章
iOS之xib创建view、initWithCoder、awakeFromNib
查看>>
nodejs之异常的处理
查看>>
nodejs之参数的接收GET 和POST
查看>>
iOS之app的运行原理
查看>>
nodejs之异步流程控制ASYNC
查看>>
iOS之跑马灯的实现
查看>>
nodejs之npm的使用、nvm
查看>>
iOS之javascript调用oc
查看>>
nodejs之express(一)简单实现路由
查看>>
nodejs之代码操作mysql(直连和连接池连接mysql)\mysql权限操作
查看>>
nodejs之事件处理机制(抛出事件、监听事件)
查看>>
iOS常用之绑卡或实名认证、收货地址
查看>>
iOS常用之imageview和scrollView显示长图片
查看>>
nodejs之http.request 网页抓取数据
查看>>
iOS常用之tableview的View和controller分离,tableview多级列表
查看>>
MAC硬盘目录结构详解及相关操作
查看>>
nodejs之nightmare的使用--网络爬虫---论坛灌水
查看>>
nodejs操作数据库mongodb
查看>>
nodejs之nodemailer发送邮件
查看>>
iOS 之后台返回json解析出现的null的解决办法、nil、Nil、NSULL、NULL之间的区别、野指针、内存泄漏、僵尸对象
查看>>