首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

makefile有关问题,想像vs一样将目标文件,输出文件存放在指定文件夹,而不是在源文件的目录

2013-08-22 
makefile问题,想像vs一样将目标文件,输出文件存放在指定文件夹,而不是在源文件的目录SRCDIRsrc/OBJSDIR.

makefile问题,想像vs一样将目标文件,输出文件存放在指定文件夹,而不是在源文件的目录

SRCDIR=src/
OBJSDIR=../temp/client_net/linux/
TARDIR=../lib/
SRCS=$(wildcard src/*.cpp)
OBJS=$(addprefix $(OBJSDIR), $(notdir $(patsubst %.cpp, %.o, $(SRCS))))
TAR=$(addprefix $(TARDIR), libclient_net.so)
CXXFLAGS=-Iinterface -I.. -fpic
LDFLAGS=-L../lib -lACE -shared
$(shell "if [ ! -f $(OBJSDIR) ]; then mkdir -p $(OBJSDIR) fi")

.PHONY:all clean

all:$(TAR)

$(TAR):$(OBJS)
        $(CXX) $(LDFLAGS) -o $@ $^

$(OBJSDIR)%.o:$(SRCDIR)%.cpp
        $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $<

clean:
        @rm $(OBJS) $(TAR)


makefile如上,但是创建目标文件目录总是失败,有什么其他方法吗?
$(shell "if [ ! -f $(OBJSDIR) ]; then mkdir -p $(OBJSDIR) fi")这个一直失败 。。。
Visual?Studio Makefile shell 目录
[解决办法]
我一般是这么处理的


install:
    @if [ ! -f $(OBJSDIR) ];then \
    mkdir -p $(OBJSDIR)  \
    fi \

[解决办法]
ifeq ($(wildcard $(OBJSDIR)), )
mkdir -p $(OBJSDIR)
endif

热点排行