zoukankan      html  css  js  c++  java
  • Makefile 一个简单例子

    //http://wg2009perfect.blog.163.com/blog/static/127997663200992995834510/

    在Linux下写c/c++程序的,一定都会用的,下面是一个比较简单的Makefile文件,也是一个比较通俗的:

    OBJECT = main.o App.o GetPwd.o md5.o TEA.o QQSession.o QQ.o PcapBase.o

    CFLAGS = -g -c -O3

    abc: $(OBJECT)

             g++  $(OBJECT)  -o  abc  -g  -lpcap -licui18n -licuuc

    main.o: main.cpp App.h

             g++ main.cpp $(CFLAGS)

    App.o: App.cpp App.h PcapBase.h Packet.h Common.h QQ.h PktParser.h PcapException.h

             g++ App.cpp  $(CFLAGS)

    GetPwd.o:GetPwd.cpp GetPwd.h Common.h Md5.h TEA.h

             g++ GetPwd.cpp  $(CFLAGS)

    QQSession.o: QQSession.cpp Packet.h GetPwd.h Common.h TEA.h Md5.h unicode/ucnv.h

             g++ QQSession.cpp  $(CFLAGS)

    QQ.o: QQ.cpp Packet.h Md5.h QQSession.h Common.h

             g++ QQ.cpp  $(CFLAGS)

    md5.o: md5.cpp Md5.h

             g++ md5.cpp  $(CFLAGS)

    TEA.o: TEA.cpp TEA.h Common.h

             g++ TEA.cpp  $(CFLAGS)

    PcapBase.o: PcapBase.cpp PcapBase.h PcapException.h

             g++ PcapBase.cpp  $(CFLAGS)

    clean :

             rm *.o

    分析:

    OBJECT = main.o App.o GetPwd.o md5.o TEA.o QQSession.o QQ.o PcapBase.o

    所有.cpp 文件都在生成一个对应的.o文件

    CFLAGS = -g -c -O3

    -g :程序支持调试功能,即用gdb调试;-O3:在编译程序时对程序做优化

    abc: $(OBJECT)

    $(OBJECT) : shell变量,就是前面定义的那一串等同

    g++  $(OBJECT)  -o  abc  -g  -lpcap -licui18n -licuuc

    这一行,-lpcap -licui18n –licuuc  , 一些库的调用,因为后面没有跟路径就是在系统路径下

    接下来的多行,如下的:

    main.o: main.cpp App.h

             g++ main.cpp $(CFLAGS)

    .o文件: .cpp文件 .cpp文件依赖的头文件, 下面就是编译了

    到最后一行:删除所有的.o文件

    clean :

             rm *.o

    这个最简单的给初学者做个入门参考,谢谢支持…

  • 相关阅读:
    解决多个window.onload冲突问题
    asp.net中img底部出现空白解決辦法
    学习WF起步
    ASP.NET后台注册javascript脚本方法
    WCF、Net remoting、Web service概念及区别
    WCF问答 WCF 与Web Service的区别
    C++深度探索系列:智能指针(Smart Pointer) [一] (转)
    ofstream和ifstream(详细2)转
    全面掌握const、volatile和mutable关键字(转)
    #define用法 收藏
  • 原文地址:https://www.cnblogs.com/cheng07045406/p/3521254.html
Copyright © 2011-2022 走看看