使用 gmake 和 make

使用 gmake 和 make

我的 Makefile 条目有以下片段:

####### Compiler, tools and options

CC              =       cl
CXX             =       cl
LEX             = flex
YACC            = byacc
CFLAGS  =       -nologo -Zm200 /MD /NODEFAULTLIB:msvcrtd /map:"Debug/eta.map" -W3 -MD -Od  -DUNICODE -D_CRT_SECURE_NO_DEPRECATE -DNOCRYPT -DNOUNCRYPT -DGEO_LIB -DQT_THREAD_SUPPORT -DQT_THREAD_SUPPORT -DQT_NO_DEBUG
CXXFLAGS        =       -nologo -Zm200 -W3 -MD -O1  -DUNICODE -D_CRT_SECURE_NO_DEPRECATE -DNOCRYPT -DNOUNCRYPT -DGEO_LIB -DQT_THREAD_SUPPORT -DQT_THREAD_SUPPORT -DQT_NO_DEBUG
LEXFLAGS        =
YACCFLAGS       =-d
INCPATH =        -I"c:\qt\3.3.8\include" -I"." -I"zlib-1.2.3" -I"$(QTDIR)\include" -I"." -I"C:\Qt\3.3.8\mkspecs\win32-msvc"
LINK    =       link
LFLAGS  =       /NOLOGO delayimp.lib /DELAYLOAD:comdlg32.dll /DELAYLOAD:oleaut32.dll /DELAYLOAD:winmm.dll /DELAYLOAD:wsock32.dll /DELAYLOAD:winspool.dll /NODEFAULTLIB:"libc" /SUBSYSTEM:windows /incremental:no /LIBPATH:"$(QTDIR)\lib"
LIBS    =        "qt-mt338.lib" "qt-mt338.lib" "qtmain.lib" "kernel32.lib" "user32.lib" "gdi32.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "imm32.lib" "winmm.lib" "wsock32.lib" "winspool.lib"
MOC             =       $(QTDIR)\bin\moc.exe
UIC             =       $(QTDIR)\bin\uic.exe
QMAKE           =       qmake
IDC             =       $(QTDIR)\bin\idc.exe
IDL             =       midl
ZIP             =       zip -r -9
COPY_FILE       =       copy
COPY_DIR        =       copy
DEL_FILE        =       del
DEL_DIR =       rmdir
MOVE            =       move
CHK_DIR_EXISTS =        if not exist
MKDIR           =       mkdir
INSTALL_FILE= $(COPY_FILE)
INSTALL_DIR = $(COPY_DIR)

####### Files
  Intentionally left out to reduce size

####### Implicit rules

.SUFFIXES: .c .cpp .cc .cxx .C

{.}.cpp{}.obj::
        $(CXX) -c $(CXXFLAGS) $(INCPATH) -Fo @<<
        $<
        <<
{.}.cc{}.obj::
        $(CXX) -c $(CXXFLAGS) $(INCPATH) -Fo @<<
        $<
        <<
{.}.cxx{}.obj::
        $(CXX) -c $(CXXFLAGS) $(INCPATH) -Fo @<<
        $<
        <<
{.}.C{}.obj::
        $(CXX) -c $(CXXFLAGS) $(INCPATH) -Fo @<<
        $<
        <<
{.}.c{}.obj::
        $(CC) -c $(CFLAGS) $(INCPATH) -Fo @<<
        $<
        <<
####### Build rules

all: Makefile
        $(TARGET) $(TARGET):  $(UICDECLS) $(OBJECTS) $(OBJMOC) 
        $(LINK) $(LFLAGS) /OUT:$(TARGET) @<<
        $(OBJECTS) $(OBJMOC) $(LIBS)
        <<


mocables: $(SRCMOC)
uicables: $(UICIMPLS) $(UICDECLS)

Makefile:
        eta.pro  C:\Qt\3.3.8\mkspecs\win32-msvc\qmake.conf $(QMAKE) -o Makefile eta.pro
qmake: 
        @$(QMAKE) -o Makefile eta.pro

   More rules ...

我收到此错误:(为什么?)

Linux:~/edge/src/qt/utilities/app/eta> gmake
cl -c -nologo -Zm200 -W3 -MD -O1  -DUNICODE -D_CRT_SECURE_NO_DEPRECATE -DNOCRYPT -DNOUNCRYPT -DGEO_LIB -DQT_THREAD_SUPPORT -DQT_THREAD_SUPPORT -DQT_NO_DEBUG -I"c:\qt\3.3.8\include" -I"." -I"zlib-1.2.3" -I"/home/sam/edge/qt4\include" -I"." -I"C:\Qt\3.3.8\mkspecs\win32-msvc" -Fo @<<
/bin/sh: -c: line 0: syntax error near unexpected token `newline'
/bin/sh: -c: line 0: `cl -c -nologo -Zm200 -W3 -MD -O1  -DUNICODE -D_CRT_SECURE_NO_DEPRECATE -DNOCRYPT -DNOUNCRYPT -DGEO_LIB -DQT_THREAD_SUPPORT -DQT_THREAD_SUPPORT -DQT_NO_DEBUG -I"c:\qt\3.3.8\include" -I"." -I"zlib-1.2.3" -I"/home/sam/edge/qt4\include" -I"." -I"C:\Qt\3.3.8\mkspecs\win32-msvc" -Fo @<<'
gmake: *** [{.}.cpp{}.obj] Error 1

相关内容