zoukankan      html  css  js  c++  java
  • Makefile

    关键字:

    include xxx.mk

    CXX = g++

    CXXFLAGS = -std=c++11 -fPIC -shared -I../ -O3.................

    LDFLAGS = -L../   ...........

    LDLIBS = -labc (全名:libadc.so)  ddeeff.a .......                                       (默认先找动态库,静态最好把路径和名称写全?)

    LIBNAME = libxxx.so   (我想要的)

    $(MAKE) -C xxx      (到xxx目录下执行make,多个目录顺序编译如下:)

    SUBDIRS = aaa bbb ccc
    
    all : 
        $(MAKE) subdirs
        
    subdirs: $(SUBDIRS)
    
    .PHONY: $(SUBDIRS)
    $(SUBDIRS) : 
        $(MAKE) -C $@

    make depend (一种makefile的规则,通过扫描仪个目录下的所有CC++ 代码,从而判断出文件之间的依赖关系,如a.cc文件中调用了b.h(如以形势include<b.h>),如果之后a.cc文件被改动,那么只需要重新编译a.cc文件,不需要编译b.h文件。否则所有的文件都需要重新编译)

    depend:

      -$(CXX) -M $(CXXFLAGS) *.cpp > .depend.mk

    -include .depend.mk

    $^    (冒号后的所有对象)

    -for x in $(SUBDIRS); do $(MAKE) -C $$x clean; done

    -Wl,--no-undefined    未定义报错

    -Wl,--whole-archive $(LDLIBS) -Wl,--no-whole-archive    

    -Wl,--rpath,/aaa,/bbb,/ccc                              -Wl,-rpath=/ddd            动态库路径加上这个,避免可执行程序报找不到库的错误。

  • 相关阅读:
    jpeg 文档格式
    gif 文件格式
    firefox前世今生
    png 文档格式
    字符'\xe5\x8c\x97\xe4\xba\xac\xe6\x96\xb0\xe5\x8d\x8e\xe7\x94\xb5\xe8\x84\x91\xe5\xad\xa6\xe6\xa0\xa1' 转为汉字
    SQL server 报错:
    encode 与 decode
    Octave 作图 无响应
    qmake建工程
    urlparse (scheme、netloc、path等)
  • 原文地址:https://www.cnblogs.com/bingdongwuchi/p/6649677.html
Copyright © 2011-2022 走看看