当前位置:  技术问答>linux和unix

AIX 上面makefile问题,(如何向VC那样,.o文件都输出到指定的路径下,如./debug路径下))

    来源: 互联网  发布时间:2015-08-29

    本文导语:  替换规则应该怎么书写,谁能给我一个简单的例子,工程文件超过了200个,在十几个文件夹下。能有好的替换规则么? 另外, AIX平台上的Makefile文件可以用那些函数处理,我找了一些资料没有找到AIX上面能用的函数...

替换规则应该怎么书写,谁能给我一个简单的例子,工程文件超过了200个,在十几个文件夹下。能有好的替换规则么?


另外,
AIX平台上的Makefile文件可以用那些函数处理,我找了一些资料没有找到AIX上面能用的函数呢
类是$(subst ,,) 这样的函数都不能使用

|
#*******************************************************************
# FILE NAME : makefile
# Copyright 2000-2001 Openet Corporation. All rights reserved.
#
# Created by : Jack He
# Last Modified Time : 2002.04.08 
#  Modified by : Jack He
#*******************************************************************

CC = gcc 
SYBASE  = /home/sybase
ROOTDIR = 

LANG = 
OBJ = ../obj
EXE = ../bin/smb_dm
SYBASE_OCS = ${SYBASE}/OCS-12_0

PRECOMP = cpre
PRECOMPFLAGS = -l -m -h 

LIBFLAGS = -lnsl -lpthread    #-lsocket
SYBASELIB = -L${SYBASE_OCS}/lib -lct_r -lcs_r -ltcl_r -lcomn_r -lintl_r

CPPFLAGS = -I../include -I${SYBASE_OCS}/include -D__unix__

OBJS=${OBJ}/cj_main.o ${OBJ}/cj_publ.o ${OBJ}/cj_ftp.o ${OBJ}/sybesql.o 
${OBJ}/cj_err.o ${OBJ}/cj_basi.o 

build: $(OBJS) 
@echo
@echo
$(CC) -o $(EXE) $(OBJS) ${LIBFLAGS} ${SYBASELIB} 
@echo
@echo "***   Make my program OK !!!   ***"
@echo

${OBJ}/cj_main.o:cj_main.c
$(CC) $(CPPFLAGS) -c cj_main.c
@mv cj_main.o ${OBJ} 
@rm -f cj_main.c

cj_main.c:cj_main.cp
${PRECOMP} ${PRECOMPFLAGS} -O cj_main.c cj_main.cp 

${OBJ}/cj_err.o:cj_err.c
$(CC) $(CPPFLAGS) -c cj_err.c
@mv cj_err.o ${OBJ} 
@rm -f cj_err.c

cj_err.c:cj_err.cp
${PRECOMP} ${PRECOMPFLAGS} -O cj_err.c cj_err.cp 

${OBJ}/cj_publ.o:cj_publ.c
$(CC) $(CPPFLAGS) -c cj_publ.c
@mv cj_publ.o ${OBJ} 
@rm -f cj_publ.c

cj_publ.c:cj_publ.cp
${PRECOMP} ${PRECOMPFLAGS} -O cj_publ.c cj_publ.cp 

${OBJ}/cj_basi.o:cj_basi.c
$(CC) $(CPPFLAGS) -c cj_basi.c
@mv cj_basi.o ${OBJ} 
@rm -f cj_basi.c

cj_basi.c:cj_basi.cp
${PRECOMP} ${PRECOMPFLAGS} -O cj_basi.c cj_basi.cp 

###########################################

${OBJ}/sybesql.o:${SYBASE_OCS}/include/sybesql.c
${CC} ${CPPFLAGS} -c ${SYBASE_OCS}/include/sybesql.c 
@mv sybesql.o ${OBJ}

###########################################

${OBJ}/cj_ftp.o:cj_ftp.c
$(CC) $(CPPFLAGS) -c cj_ftp.c
@mv cj_ftp.o ${OBJ} 

###########################################

clean:
@rm -f ${OBJ}/*.o 

|
你不用默认的.cpp.o隐式规则,定义一个自己的.cpp.o规则指定好.o的生成路径,应该就可以了吧,没有具体试过,不过可能连接的时候会有问题,需要指定好默认的连接路径。

make的函数你可以info make看下,所有函数的介绍都有的。

|
such as:

$(OBJPATH)/downfile.o:downfile.c
    cc -c downfile.c
    mv downfile.o $(OBJPATH)



|
-o /tmp/xxx 这样可以吗

|
The replace rule you mentioned I have forgotten as I have never used it.
But I think you can use shell command below the cc to implement it.
such as : cp $OBJECT   ../obj

|
在不同的路径下写Makefile,然后调用。

|
没用过aix,没有这个命令?
man查不到么,那你平时用什么命令查看手册?

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • aix下自动备份oracle 的输出日志问题,急!!
  • AIX 5.3下调用windows 2000上的exe程序,且AIX下需要得到windows下程序执行的返回结果
  • AIX目前最新的编译器都支持C++0x标准里的那些内容?GCC 4.5.0是否能够在AIX上安装?
  • 公告:CSDN AIX论坛有奖话题讨论活动(七)——本期话题:在海量运算方面,和Linux系统相比,AIX系统有优势吗?
  • 哪里可以下载AIX操作系统?
  • 公告:CSDN AIX论坛有奖话题讨论活动(四)——本期话题:从开发周期上来看,和HP-UX、Solaris相比,AIX系统有优势吗?
  • 公告:CSDN AIX论坛有奖话题讨论活动(八)——本期话题:除了数据库应用,还有哪些应用也可以运行于AIX系统之上?(和Linux系统相比较,性能更优)
  • 公告:CSDN AIX论坛有奖话题讨论活动(八)——本期话题:除了数据库应用,还有哪些应用也可以运行于AIX系统之上?(和Linux系统相比较,性能更优) iis7站长之家
  • 求GCC for AIX5.3
  • aix上编译问题
  • linux -> aix 发展
  • 公告:CSDN AIX论坛有奖话题讨论活动(六)——本期话题:AIX的动态工作负载分区和Hypervisor的逻辑分区相比,有何优劣?
  • 有关 AIX 编程兼容性方面的疑问
  • aix问题求教--愿给200分!!!
  • 关于AIX的进程间通讯的方法
  • window 向aix 的移植问题----在线等待
  • 普通pc机,可否装aix操作系统?
  • 有谁在AIX下装过下载版的websphere
  • IBM AIX可以用其他的unix 或者 lunix代替吗?
  • Oracle10g在AIX上的安装准备工作《Oracle大型数据库系统在AIX/unix上的实战详解》 集中答疑 40
  • 请问AIX下用什么命令能够获取CPU型号、频率信息,多CPU情况下


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3