내 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