关于Linux版本的Makefile改趁VC++版本的MakeFile!

原创 2004年05月07日 13:29:00

软件生手的问题:手头的代码是Linux的版本,想向Windows 移植,主要是把Makefile写成VC++格式的,然后修改一些代码,怎么改写Makefile,我自己尝试的都不成功,请大侠指点迷津!或者在哪里能找到这个问题的论述!谢谢大家!

代码一、系统框架的Makefile

! include $(SRC)/host.mak
LSRC = $(SRC)

#includes: FORCE
# $(MAKE) -f $(LSRC)/tmman/Makefile includes
 
# first tmman for dll dependencies
target: FORCE
# -$(MKDIR) host_comm tmman
 cd tmman   
 $(MAKE) -f $(LSRC)/tmman/Makefile     target
 (cd host_comm; $(MAKE) -f $(LSRC)/host_comm/Makefile target)
 
host: FORCE
# -$(MKDIR) dvd host_comm tmman
 (cd dvd    ; $(MAKE) -f $(LSRC)/dvd/Makefile     host)
 (cd host_comm; $(MAKE) -f $(LSRC)/host_comm/Makefile host)
 (cd tmman    ; $(MAKE) -f $(LSRC)/tmman/Makefile     host)

FORCE:

 

代码二、C程序的Makefile

############################################################################
#
#
# AUTHOR Tilakraj Roy @ Philips Semiconductors
###########################################################################
! include $(SRC)/host/WinNT/host.mak
###############################################################################

MODULE  = tmcrt
EXT  = dll

CFLAGS = -W3 -Zp4 -c -Od -Ze -Gs -MD
CINCS = -I$(LSRC) /
   -I$(LSRC)/../../include /
   -I$(LSRC)/../include /
   -I$(SDK)/vc/include /
   -I$(TCS)/include/tmlib /
   -I$(TCS)/include/WinNT /
   -I$(TCS)/include/tm1

#CDEFS = -DWIN32 -Di386 -D_X86_ -DTMMAN_HOST -DUSE_DVD
CDEFS = -DWIN32 -Di386 -D_X86_ -DTMMAN_HOST

LIBS = /
 libload.lib /
 c:/TriMedia/lib/WinNT/host_comm.lib /
 kernel32.lib /
 wsock32.lib /
 user32.lib /
 winmm.lib /
 advapi32.lib /
 tmman32.lib /
 authhost.lib /
 c:/TriMedia/lib/WinNT/custom_ops/libtcs.lib

# $(SUPPORT)/lib/libtcs.lib


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

release : $(MODULE).$(EXT) FORCE
 copy $(MODULE).lib $(TCS)/lib/WinNT
 copy $(MODULE).lib $(SUPPORT)/lib/WinNT
 copy $(MODULE).lib $(TCS)/lib/Win95
 copy $(MODULE).lib $(SUPPORT)/lib/Win95
 copy $(MODULE).$(EXT) $(TCS)/bin

FORCE:

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

OBJS = tmcrt.obj /
   verinfo.obj /
   DVD_Ctl_PC.obj /
   $(MODULE).res

 

#$(MODULE).$(EXT) : $(OBJS)
   # $(SDK)/vc/bin/link -machine:i386 -entry:DLLInitialize -subsystem:windows -dll -incremental:no -pdb:$(MODULE).pdb -out:$(MODULE).$(EXT) -map:$(MODULE).map -def:$(LSRC)/$(MODULE).def -implib:$(MODULE).lib -libpath:$(SDK)/vc/lib -libpath:$(TCS)/lib/WinNT $(OBJS) $(LIBS)

$(MODULE).$(EXT) : $(OBJS)
     $(SDK)/vc/bin/link -machine:i386 -entry:DLLInitialize -subsystem:windows -dll -VERBOSE  -DEFAULTLIB:MSVCRT -DEFAULTLIB:LIBCMT -NODEFAULTLIB:LIBC -NODEFAULTLIB:libcpmt -incremental:no -pdb:$(MODULE).pdb -out:$(MODULE).$(EXT) -map:$(MODULE).map -def:$(LSRC)/$(MODULE).def -implib:$(MODULE).lib -libpath:$(SDK)/vc/lib -libpath:$(TCS)/lib/WinNT $(OBJS) $(LIBS)

{$(LSRC)/}.c{}.obj :
 $(SDK)/vc//bin/cl $(CFLAGS) $(CINCS) $(CDEFS) -Fd$(MODULE).pbd -Fo$@ $<


{$(LSRC)/../..}.c{}.obj :
 $(SDK)/vc/bin/cl $(CFLAGS) $(CDEFS) $(CINCS) -Fd$(LOUT)/$(MODULE).pdb -Fo$@  $<

{$(LSRC)/}.rc{}.res :
 $(SDK)/SharedIDE/bin/rc -r -i$(LSRC)/../../include -Fo$@ $<
请教这两个东西如何改!

关于Linux版本的Makefile改趁VC++版本的MakeFile!

导读:   关键字 Makefile   出处   软件生手的问题:手头的代码是Linux的版本,想向Windows 移植,主要是把Makefile写成VC++格式的,然后修改一些代码,怎么改写Ma...
  • chief1985
  • chief1985
  • 2007年12月18日 22:46
  • 725

简单编写makefile文件,实现GCC4.9编译项目,加入boost库测试等等。。

一、需要用到的几个测试文件
  • leitianjun
  • leitianjun
  • 2014年05月10日 10:13
  • 3190

Makefile的通用模板解析

介于许多童鞋不会使用Makefile来管理我们的代码文件,有时候工程文件少的时候通过gcc直接编译是比较方便的,但是当我们一个项目中的工程文件比较多难以管理的时候再去使用gcc去逐个地编译源文件那是比...
  • liebao_han
  • liebao_han
  • 2016年10月20日 17:30
  • 654

一个STM32项目的makefile模版详解

啥都不说了,直接上代码,注释相当详细了。 #STM32 makefile template # 生成的文件名 PROJECT = stm32_Mini_Led ...
  • markinstephen
  • markinstephen
  • 2016年11月30日 17:33
  • 2099

Linux 动态和静态库(.so & .a)的Makefile模板

目录结构: CommomLib--|inc                    --|src                    --|obj                    --|...
  • cupidove
  • cupidove
  • 2013年08月01日 16:17
  • 11526

CMake 生成 Linux 下 Debug 版本的 Makefile 方法

默认为 Release 版的 Makefile。 要生成 Debug 版时,方法如下:cmake -DCMAKE_BUILD_TYPE=Debug ..参考:CMAKE_BUILD_TYPE htt...
  • icbm
  • icbm
  • 2016年10月30日 07:26
  • 1251

Makefile中自动加入svn版本号

SVN_REVISION = $(shell svn info |grep Revision|awk '{print $$2}') #SVN_REVISION=$(shell svn info | ...
  • qiupingunix
  • qiupingunix
  • 2017年04月26日 14:13
  • 407

在一个makefile中输出一个程序的debug版本和release版本

在一个makefile中输出一个程序的debug版本和release版本 场景: 开发人员(rd)和测试人员(qa)是不同的人,可执行程序是通过配置管理平台提供的。同时,所有程序要上线运行,要通过...
  • wishfly
  • wishfly
  • 2015年04月30日 07:28
  • 2641

makefile引用opencv

最近在 test2.cpp#include #include #include #include int main() { IplImage * image; ...
  • pbypby1987
  • pbypby1987
  • 2014年02月07日 20:15
  • 3952

u-boot中makefile的执行步骤

u-boot顶目录下的Makefile 1.其中有SRCTREE     := $(CURDIR),ZHEG
  • rockrockwu
  • rockrockwu
  • 2014年08月20日 15:28
  • 3304
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于Linux版本的Makefile改趁VC++版本的MakeFile!
举报原因:
原因补充:

(最多只允许输入30个字)