рдХреНрдпреВрдЯреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдЖрдкрдХреЛ рд╕рд╣реА рдорд╛рдпрдиреЗ рдореЗрдВ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдПрдХ рдмрд╛рд░ рд▓рд┐рдЦреЗ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдХрдИ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдХреЛрдб рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╕рдорд╕реНрдпрд╛ "рд╕рдВрдХрд▓рди" рд╢рдмреНрдж рдореЗрдВ рдареАрдХ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рдордЭрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд▓рдХреНрд╖реНрдп рдкреНрд░рдгрд╛рд▓реА рдХреЗ рддрд╣рдд рд░рд┐рдмреВрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдЗрд╕рдореЗрдВ рдПрдХ рдЕрдиреБрдХреВрд▓рд┐рдд рд╡рд┐рдХрд╛рд╕ рд╡рд╛рддрд╛рд╡рд░рдг, рд╕реНрдерд╛рдкрд┐рдд рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдЪрд┐рдбрд╝рд┐рдпрд╛рдШрд░ рд╣реЛрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдХреНрд░реЙрд╕ рд╕рдВрдХрд▓рди рдмрдЪрд╛рддрд╛ рд╣реИ - рд╕рдВрдХрд▓рди рдЬреЛ рдПрдХ рдордВрдЪ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдХреЛрдб рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕ рдкрд░ рдЗрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╡рд┐рдВрдбреЛрдЬ 64 рдХреЗ рд▓рд┐рдП рдХреНрд░реЙрд╕ рд╕рдВрдХрд▓рди
рдЖрдорддреМрд░ рдкрд░, рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдорд╛рдВрдЧ рд╡рд╛рд▓реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╡рд┐рдВрдбреЛрдЬ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рд╣реИ, рдЬрд┐рд╕реЗ рд╢реБрд░реВ рдореЗрдВ рд▓рд┐рдирдХреНрд╕ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг
рдпрд╣рд╛рдБ рдпрд╛
рд░реВрд╕реА рдореЗрдВ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЖрдкрдХреЛ рдПрдХ mkspecs рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ, рдХреНрдпреВрдЯреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЙрдЪрд┐рдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ рдбрд╛рд▓реЗрдВ, рдФрд░ рдпрд╣ рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, Qt рдХрд╛ рд╕рдВрдХрд▓рди рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ; рдЖрдк рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рд╛рдЗрдЯ рд╕реЗ рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдХрдИ рдиреБрдХрд╕рд╛рди рд╣реИрдВ: 1) QtCreator рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдкрддрд╛ рд╣реИ; 2) рд╡рд┐рдВрдбреЛрдЬ x64 рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдХреНрдпреВрдЯреА рдмрд┐рд▓реНрдб рдирд╣реАрдВ рд╣реИред рдФрд░ рдЕрдЧрд░ рдЖрдк рдЕрднреА рднреА рдХрд┐рд╕реА рддрд░рд╣ рдкрд╣рд▓реА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рд▓рдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдХреЗрд╡рд▓ рд╕рдВрдХрд▓рди рджреВрд╕рд░реЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рдорджрдж рдХрд░реЗрдЧрд╛ ...
рдХреНрд░реЙрд╕-рдХрдВрдкрд╛рдЗрд▓рд┐рдВрдЧ рд╕реЗ рдкрд╣рд▓реЗ, рд╕реАрдзреЗ рдХреНрд░реЙрд╕-рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рд╕реАрдзреЗ рд░рдЦрдирд╛ рди рднреВрд▓реЗрдВ (рдпрд╣ рдкреИрдХреЗрдЬ рдкреНрд░рдмрдВрдзрдХ "mingw" рдирд╛рдо рд╕реЗ рджреЗрдЦрд╛ рдЧрдпрд╛ рд╣реИ)ред рдФрд░ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рд╛рдЗрдЯ рд╕реЗ рдХреНрдпреВрдЯреА-рд╣рд░ рдЬрдЧрд╣ рдХреЗ рд╕реНрд░реЛрддреЛрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВред рдЕрдирдкреИрдХ рд╕рдВрдЧреНрд░рд╣ рдХреЗ
mkspecs рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ,
win32-g ++ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ
win64-x-g ++ рдореЗрдВ
рдХреЙрдкреА рдХрд░реЗрдВ рдФрд░
qmake.conf рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░реЗрдВред рдореБрдЭреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд┐рд▓рд╛:
рдЫрд┐рдкрд╛ рд╣реБрдЖ рдкрд╛рда# # qmake configuration for win64-x-g++ # # Written for MinGW # # Cross compile example for i686-w64-mingw32-g++: # configure -xplatform win32-g++ -device-option CROSS_COMPILE=i686-w64-mingw32- # MAKEFILE_GENERATOR = MINGW load(device_config) equals(QMAKE_HOST.os, Windows): EXE_SUFFIX = .exe TEMPLATE = app CONFIG += qt warn_on release link_prl copy_dir_files debug_and_release debug_and_release_target precompile_header QT += core gui DEFINES += UNICODE #QT_LARGEFILE_SUPPORT QMAKE_COMPILER_DEFINES += __GNUC__ WIN WIN32 WIN64 QMAKE_EXT_OBJ = .o QMAKE_EXT_RES = _res.o QMAKE_CC = $${CROSS_COMPILE}gcc QMAKE_LEX = flex QMAKE_LEXFLAGS = QMAKE_YACC = byacc QMAKE_YACCFLAGS = -d QMAKE_CFLAGS = -pipe -m64 QMAKE_CFLAGS_DEPS = -M QMAKE_CFLAGS_WARN_ON = -Wall -Wextra QMAKE_CFLAGS_WARN_OFF = -w QMAKE_CFLAGS_RELEASE = -O2 QMAKE_CFLAGS_DEBUG = -g QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses QMAKE_CXX = $${CROSS_COMPILE}g++ QMAKE_CXXFLAGS = $$QMAKE_CFLAGS QMAKE_CXXFLAGS_DEPS = $$QMAKE_CFLAGS_DEPS QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG QMAKE_CXXFLAGS_YACC = $$QMAKE_CFLAGS_YACC QMAKE_CXXFLAGS_THREAD = $$QMAKE_CFLAGS_THREAD QMAKE_CXXFLAGS_RTTI_ON = -frtti QMAKE_CXXFLAGS_RTTI_OFF = -fno-rtti QMAKE_CXXFLAGS_EXCEPTIONS_ON = -fexceptions -mthreads QMAKE_CXXFLAGS_EXCEPTIONS_OFF = -fno-exceptions QMAKE_INCDIR = /usr/x86_64-w64-mingw32/include QMAKE_INCDIR_QT = $$[QT_INSTALL_HEADERS] QMAKE_LIBDIR_QT = $$[QT_INSTALL_LIBS] QMAKE_RUN_CC = $(CC) -c $(CFLAGS) $(INCPATH) -o $obj $src QMAKE_RUN_CC_IMP = $(CC) -c $(CFLAGS) $(INCPATH) -o $@ $< QMAKE_RUN_CXX = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $obj $src QMAKE_RUN_CXX_IMP = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $< QMAKE_LINK = $${CROSS_COMPILE}g++ QMAKE_LINK_C = $${CROSS_COMPILE}gcc #QMAKE_LFLAGS = -m64 QMAKE_LFLAGS = -m64 -mthreads -static-libgcc -static -Wl,-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -mwindows QMAKE_LFLAGS_EXCEPTIONS_ON = -mthreads QMAKE_LFLAGS_EXCEPTIONS_OFF = QMAKE_LFLAGS_RELEASE = -Wl,-s QMAKE_LFLAGS_DEBUG = QMAKE_LFLAGS_CONSOLE = -Wl,-subsystem,console QMAKE_LFLAGS_WINDOWS = -Wl,-subsystem,windows QMAKE_LFLAGS_DLL = -shared QMAKE_LINK_OBJECT_MAX = 10 QMAKE_LINK_OBJECT_SCRIPT= object_script QMAKE_PREFIX_STATICLIB = lib QMAKE_EXTENSION_STATICLIB = a QMAKE_LIBS = QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32 QMAKE_LIBS_GUI = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 -ladvapi32 QMAKE_LIBS_NETWORK = -lws2_32 QMAKE_LIBS_OPENGL = -lglu32 -lopengl32 -lgdi32 -luser32 QMAKE_LIBS_COMPAT = -ladvapi32 -lshell32 -lcomdlg32 -luser32 -lgdi32 -lws2_32 QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqtmain !isEmpty(QMAKE_SH) { MINGW_IN_SHELL = 1 QMAKE_DIR_SEP = / QMAKE_QMAKE ~= s,\\\\,/, QMAKE_COPY = cp QMAKE_COPY_DIR = cp -r QMAKE_MOVE = mv QMAKE_DEL_FILE = rm QMAKE_MKDIR = mkdir -p QMAKE_DEL_DIR = rmdir QMAKE_CHK_DIR_EXISTS = test -d } else { QMAKE_COPY = copy /y QMAKE_COPY_DIR = xcopy /s /q /y /i QMAKE_MOVE = move QMAKE_DEL_FILE = del QMAKE_MKDIR = mkdir QMAKE_DEL_DIR = rmdir QMAKE_CHK_DIR_EXISTS = if not exist } QMAKE_MOC = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}moc$${EXE_SUFFIX} QMAKE_UIC = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}uic$${EXE_SUFFIX} QMAKE_IDC = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}idc$${EXE_SUFFIX} QMAKE_IDL = midl QMAKE_LIB = $${CROSS_COMPILE}ar -ru QMAKE_RC = $${CROSS_COMPILE}windres QMAKE_ZIP = zip -r -9 QMAKE_STRIP = $${CROSS_COMPILE}strip QMAKE_STRIPFLAGS_LIB += --strip-unneeded load(qt_config)
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЗрд╡рд▓ рдкрде рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдП рдЧрдП рдереЗред
рдореИрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛:
./configure -xplatform win64-x-g++ CROSS_COMPILE=x86_64-w64-mingw32- -prefix /usr/local/qt4win64 -no-webkit -no-phonon -no-phonon-backend -no-script -no-scripttools -no-multimedia -no-qt3support -fast -nomake demos -nomake examples -nomake tools -device-option -little-endian -qt-zlib -qt-libpng -qt-libjpeg -openssl-linked -no-fontconfig -no-3dnow -no-ssse3 -continue
рдпрд╣рд╛рдБ рдореИрдВ рдмрд┐рдирд╛ рд╡реЗрдмрдХрд┐рдЯ, рдлреЛрдирди, рдорд▓реНрдЯреАрдореАрдбрд┐рдпрд╛ рдЖрджрд┐ рдХреЗ Qt рдХрд╛ рдиреНрдпреВрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдПрдХрддреНрд░ рдХрд░рддрд╛ рд╣реВрдБред рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдПрдХ рдкреВрд░реА рд╕реВрдЪреА рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рджреЗрдЦреА рдЬрд╛ рд╕рдХрддреА рд╣реИ
ред/configure --helpрддрджрдиреБрд╕рд╛рд░, рдРрд╕реА рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рд▓рд┐рдП,
g ++ рдкреИрдХреЗрдЬ
- mingw-w64-x86-64 ,
x86_64-w64-mingw32- g ++ рдпреБрдХреНрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдкреИрдХреЗрдЬ рдХреЛ ubuntu рдореЗрдВ рдЕрд▓рдЧ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП)ред
рдЕрдЧрд▓рд╛
рдореЗрдХ && рд╕реБрдбреЛ рдореЗрдХ рдЗрдирд╕реНрдЯреЙрд▓ ред рд╕рдВрдХрд▓рди рдХреЗ рдкрд╣рд▓реЗ рдЪрд░рдг рдореЗрдВ, рдПрдХ рджреЗрд╢реА рд╕рд┐рд╕реНрдЯрдо рдХрдВрдкрд╛рдЗрд▓рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╣ рд▓рд┐рдирдХреНрд╕ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡рд┐рдВрдбреЛрдЬ рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдмрд╛рдж, рдореЗрд░реЗ рдкрд╛рд╕
/ usr / рд╕реНрдерд╛рдиреАрдп / qt4win64 / bin PE32 + DLL рдФрд░ рдХрдИ ELF 64-рдмрд┐рдЯ LSB рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:
qmake, uic, moc, rcc ред рддреЛ рд╡реЗ QtCreator рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдореЗрдВ рдЖрддреЗ рд╣реИрдВ!
рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдмрд╛рдж, рдЕрдирдкреИрдХреНрдб рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рд╣рдЯрд╛рдПрдВ
рдирд╣реАрдВ - рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╡рд┐рдВрдбреЛрдЬ 32 рдХреЗ рд▓рд┐рдП рдХреНрд░реЙрд╕ рд╕рдВрдХрд▓рди
Win64 рдХреЗ рд╕рдВрдХрд▓рди рдХреЗ рд╕рдорд╛рдиред рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рдПрдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рднрд╛ рд╣реИ, рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рд╕реНрд╡рдпрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ! рдпрд╣
qmake, uic, moc, rcc рдПрдХрддреНрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░:
рдЫрд┐рдкрд╛ рд╣реБрдЖ рдкрд╛рда./configure -xplatform win32-x-g++ -prefix /usr/local/qt4win32 CROSS_COMPILE=i686-w64-mingw32- -no-webkit -no-phonon -no-phonon-backend -no-script -no-scripttools -no-multimedia -no-qt3support -fast -nomake demos -nomake examples -nomake tools -device-option -little-endian -qt-zlib -qt-libpng -qt-libjpeg -openssl-linked -no-fontconfig -no-3dnow -no-ssse3 -continue
qmake.conf
рдЫрд┐рдкрд╛ рд╣реБрдЖ рдкрд╛рда # # qmake configuration for win32-x-g++ # # Written for MinGW # # Cross compile example for i686-w64-mingw32-g++: # configure -xplatform win32-g++ -device-option CROSS_COMPILE=i686-w64-mingw32- # MAKEFILE_GENERATOR = MINGW load(device_config) equals(QMAKE_HOST.os, Windows): EXE_SUFFIX = .exe TEMPLATE = app CONFIG += qt warn_on release link_prl copy_dir_files debug_and_release debug_and_release_target precompile_header QT += core gui DEFINES += UNICODE #QT_LARGEFILE_SUPPORT QMAKE_COMPILER_DEFINES += __GNUC__ WIN WIN32 QMAKE_EXT_OBJ = .o QMAKE_EXT_RES = _res.o QMAKE_CC = $${CROSS_COMPILE}gcc QMAKE_LEX = flex QMAKE_LEXFLAGS = QMAKE_YACC = byacc QMAKE_YACCFLAGS = -d QMAKE_CFLAGS = -pipe -m32 QMAKE_CFLAGS_DEPS = -M QMAKE_CFLAGS_WARN_ON = -Wall -Wextra QMAKE_CFLAGS_WARN_OFF = -w QMAKE_CFLAGS_RELEASE = -O2 QMAKE_CFLAGS_DEBUG = -g QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses QMAKE_CXX = $${CROSS_COMPILE}g++ QMAKE_CXXFLAGS = $$QMAKE_CFLAGS QMAKE_CXXFLAGS_DEPS = $$QMAKE_CFLAGS_DEPS QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG QMAKE_CXXFLAGS_YACC = $$QMAKE_CFLAGS_YACC QMAKE_CXXFLAGS_THREAD = $$QMAKE_CFLAGS_THREAD QMAKE_CXXFLAGS_RTTI_ON = -frtti QMAKE_CXXFLAGS_RTTI_OFF = -fno-rtti QMAKE_CXXFLAGS_EXCEPTIONS_ON = -fexceptions -mthreads QMAKE_CXXFLAGS_EXCEPTIONS_OFF = -fno-exceptions QMAKE_INCDIR = /usr/i686-w64-mingw32/include QMAKE_INCDIR_QT = $$[QT_INSTALL_HEADERS] QMAKE_LIBDIR_QT = $$[QT_INSTALL_LIBS] QMAKE_RUN_CC = $(CC) -c $(CFLAGS) $(INCPATH) -o $obj $src QMAKE_RUN_CC_IMP = $(CC) -c $(CFLAGS) $(INCPATH) -o $@ $< QMAKE_RUN_CXX = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $obj $src QMAKE_RUN_CXX_IMP = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $< QMAKE_LINK = $${CROSS_COMPILE}g++ QMAKE_LINK_C = $${CROSS_COMPILE}gcc QMAKE_LFLAGS = -m32 -mthreads -static-libgcc -static -Wl,-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -mwindows QMAKE_LFLAGS_EXCEPTIONS_ON = -mthreads QMAKE_LFLAGS_EXCEPTIONS_OFF = QMAKE_LFLAGS_RELEASE = -Wl,-s QMAKE_LFLAGS_DEBUG = QMAKE_LFLAGS_CONSOLE = -Wl,-subsystem,console QMAKE_LFLAGS_WINDOWS = -Wl,-subsystem,windows QMAKE_LFLAGS_DLL = -shared QMAKE_LINK_OBJECT_MAX = 10 QMAKE_LINK_OBJECT_SCRIPT= object_script QMAKE_PREFIX_STATICLIB = lib QMAKE_EXTENSION_STATICLIB = a QMAKE_LIBS = QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32 QMAKE_LIBS_GUI = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 -ladvapi32 QMAKE_LIBS_NETWORK = -lws2_32 QMAKE_LIBS_OPENGL = -lglu32 -lopengl32 -lgdi32 -luser32 QMAKE_LIBS_COMPAT = -ladvapi32 -lshell32 -lcomdlg32 -luser32 -lgdi32 -lws2_32 QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqtmain !isEmpty(QMAKE_SH) { MINGW_IN_SHELL = 1 QMAKE_DIR_SEP = / QMAKE_QMAKE ~= s,\\\\,/, QMAKE_COPY = cp QMAKE_COPY_DIR = cp -r QMAKE_MOVE = mv QMAKE_DEL_FILE = rm QMAKE_MKDIR = mkdir -p QMAKE_DEL_DIR = rmdir QMAKE_CHK_DIR_EXISTS = test -d } else { QMAKE_COPY = copy /y QMAKE_COPY_DIR = xcopy /s /q /y /i QMAKE_MOVE = move QMAKE_DEL_FILE = del QMAKE_MKDIR = mkdir QMAKE_DEL_DIR = rmdir QMAKE_CHK_DIR_EXISTS = if not exist } QMAKE_MOC = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}moc$${EXE_SUFFIX} QMAKE_UIC = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}uic$${EXE_SUFFIX} QMAKE_IDC = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}idc$${EXE_SUFFIX} QMAKE_IDL = midl QMAKE_LIB = $${CROSS_COMPILE}ar -ru QMAKE_RC = $${CROSS_COMPILE}windres QMAKE_ZIP = zip -r -9 QMAKE_STRIP = $${CROSS_COMPILE}strip QMAKE_STRIPFLAGS_LIB += --strip-unneeded load(qt_config)
рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдХреНрд░реЙрд╕ рд╕рдВрдХрд▓рди
рдЦрд╕рдЦрд╕ рдХреЗ рд▓рд┐рдП рдХреНрд░реЙрд╕-рд╕рдВрдХрд▓рди рднреА рдмрд╣реБрдд рд╕рдорд╛рди рд╣реИ, рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рд╕рдВрдХрд▓рдХ рдХреЛ рднреА рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛ред рдореИрдВ
рдЗрд╕ рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдПрдХрддреНрд░ рд╣реБрдЖред рдЗрд╕рдореЗрдВ рдкреВрд░реЗ рджрд┐рди рдХрд╛ рд╕рдордп рдФрд░ рдирд╕реЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд▓рдЧрд╛ред рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдЖрдкрдХреЛ рдПрдХ рдЖрд╡рд╢реНрдпрдХ рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕ (рдХрдо рд╕реЗ рдХрдо рдПрдХ рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдореЗрдВ) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдЬрд┐рд╕рдореЗрдВ рд╡рд╣рд╛рдВ рд╕реЗ рдЖрд╡рд╢реНрдпрдХ рдлрд╛рдЗрд▓реЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Xcode рд╕реНрдерд╛рдкрд┐рдд рд╣реЛред рдЕрдкрдиреЗ Qt рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддреЗ рд╕рдордп, рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░:
рдЫрд┐рдкрд╛ рд╣реБрдЖ рдкрд╛рда./configure -xplatform macx-x-g++ -prefix /usr/x86_64-apple-darwin11/usr/Qt CROSS_COMPILE=/usr/x86_64-apple-darwin11/usr/bin/x86_64-apple-darwin11- -no-webkit -no-phonon -no-phonon-backend -no-script -no-scripttools -no-multimedia -no-qt3support -fast -nomake demos -nomake examples -nomake tools -device-option -little-endian -qt-zlib -qt-libpng -qt-libjpeg -openssl-linked -no-fontconfig -no-3dnow -no-ssse3 -continue
qmake.conf:
рдЫрд┐рдкрд╛ рд╣реБрдЖ рдкрд╛рда #macx-x-g++ (different from g++.conf) # # qmake configuration for macx-g++ # # Mac OS X + command-line compiler # MAKEFILE_GENERATOR = UNIX TARGET_PLATFORM = macx TEMPLATE = app CONFIG += qt warn_on release app_bundle incremental global_init_link_order lib_version_first plugin_no_soname link_prl QT += core gui QMAKE_INCREMENTAL_STYLE = sublib #include(../common/mac.conf) # # qmake configuration for common Mac OS X # #QMAKE_RESOURCE = /Developer/Tools/Rez QMAKE_EXTENSION_SHLIB = dylib QMAKE_INCDIR = /usr/x86_64-apple-darwin11/usr/include QMAKE_LIBDIR = QMAKE_INCDIR_QT = /usr/x86_64-apple-darwin11/usr/Qt/include QMAKE_LIBDIR_QT = /usr/x86_64-apple-darwin11/usr/Qt/lib QMAKE_INCDIR_OPENGL = /System/Library/Frameworks/OpenGL.framework/Headers \ /System/Library/Frameworks/AGL.framework/Headers/ QMAKE_FRAMEWORKDIR_QT= /usr/x86_64-apple-darwin11/usr/QtFrameworks QMAKE_FIX_RPATH = install_name_tool -id QMAKE_LFLAGS_RPATH = QMAKE_LIBS_DYNLOAD = QMAKE_LIBS_OPENGL = -framework OpenGL -framework AGL QMAKE_LIBS_OPENGL_QT = $$QMAKE_LIBS_OPENGL QMAKE_LIBS_THREAD = QMAKE_MOC = $$[QT_INSTALL_BINS]/moc QMAKE_UIC = $$[QT_INSTALL_BINS]/uic QMAKE_AR = /usr/x86_64-apple-darwin11/usr/bin/x86_64-apple-darwin11-ar cq QMAKE_RANLIB = /usr/x86_64-apple-darwin11/usr/bin/x86_64-apple-darwin11-ranlib -s QMAKE_TAR = tar -cf QMAKE_GZIP = gzip -9f QMAKE_COPY = cp -f QMAKE_COPY_FILE = $$QMAKE_COPY QMAKE_COPY_DIR = $$QMAKE_COPY -R QMAKE_MOVE = mv -f QMAKE_DEL_FILE = rm -f QMAKE_DEL_DIR = rmdir QMAKE_CHK_DIR_EXISTS = test -d QMAKE_MKDIR = mkdir -p QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.5 # overridden to 10.5 for Cocoa on the compiler command line # # qmake configuration for common unix # QMAKE_LEX = flex QMAKE_LEXFLAGS += QMAKE_YACC = yacc QMAKE_YACCFLAGS += -d QMAKE_YACCFLAGS_MANGLE += -p $base -b $base QMAKE_YACC_HEADER = $base.tab.h QMAKE_YACC_SOURCE = $base.tab.c QMAKE_PREFIX_SHLIB = lib QMAKE_PREFIX_STATICLIB = lib QMAKE_EXTENSION_STATICLIB = a #include(../common/gcc-base-macx.conf) # # This file is used as a basis for the following compilers: # # - The QNX qcc compiler # # The only difference between this and gcc-base.conf is that -pipe is removed # as it's on by default in qcc (and has an analogous -nopipe option) # QMAKE_CFLAGS += QMAKE_CFLAGS_DEPS += -M QMAKE_CFLAGS_WARN_ON += -Wall -W QMAKE_CFLAGS_WARN_OFF += -w QMAKE_CFLAGS_RELEASE += -O2 QMAKE_CFLAGS_DEBUG += -g QMAKE_CFLAGS_SHLIB += -fPIC QMAKE_CFLAGS_STATIC_LIB += -fPIC QMAKE_CFLAGS_YACC += -Wno-unused -Wno-parentheses QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden QMAKE_CXXFLAGS += $$QMAKE_CFLAGS QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB QMAKE_CXXFLAGS_YACC += $$QMAKE_CFLAGS_YACC QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden QMAKE_LFLAGS += QMAKE_LFLAGS_DEBUG += QMAKE_LFLAGS_APP += QMAKE_LFLAGS_RELEASE += # # Base qmake configuration for GCC on Mac OS X # # Before making changes to this file, please read the comment in # gcc-base.conf, to make sure the change goes in the right place. # # To verify that your change has the desired effect on the final configuration # you can use the manual test in tests/manual/mkspecs. # QMAKE_COMPILER_DEFINES += __APPLE__ __GNUC__ QMAKE_CFLAGS_X86 += -arch i386 QMAKE_CFLAGS_X86_64 += -arch x86_64 QMAKE_CFLAGS_PPC += -arch ppc QMAKE_CFLAGS_PPC_64 += -arch ppc64 QMAKE_CFLAGS_DWARF2 += -gdwarf-2 QMAKE_CXXFLAGS_X86 += $$QMAKE_CFLAGS_X86 QMAKE_CXXFLAGS_X86_64 += $$QMAKE_CFLAGS_X86_64 QMAKE_CXXFLAGS_PPC += $$QMAKE_CFLAGS_PPC QMAKE_CXXFLAGS_PPC_64 += $$QMAKE_CFLAGS_PPC_64 QMAKE_CXXFLAGS_DWARF2 += $$QMAKE_CFLAGS_DWARF2 QMAKE_OBJECTIVE_CFLAGS = $$QMAKE_CFLAGS QMAKE_OBJECTIVE_CFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON QMAKE_OBJECTIVE_CFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF QMAKE_OBJECTIVE_CFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG QMAKE_OBJECTIVE_CFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE QMAKE_OBJECTIVE_CFLAGS_HIDESYMS = $$QMAKE_CXXFLAGS_HIDESYMS QMAKE_OBJECTIVE_CFLAGS_X86 = $$QMAKE_CFLAGS_X86 QMAKE_OBJECTIVE_CFLAGS_X86_64 = $$QMAKE_CFLAGS_X86_64 QMAKE_OBJECTIVE_CFLAGS_PPC = $$QMAKE_CFLAGS_PPC QMAKE_OBJECTIVE_CFLAGS_PPC_64 = $$QMAKE_CFLAGS_PPC_64 QMAKE_LFLAGS_X86 += $$QMAKE_CFLAGS_X86 QMAKE_LFLAGS_X86_64 += $$QMAKE_CFLAGS_X86_64 QMAKE_LFLAGS_PPC += $$QMAKE_CFLAGS_PPC QMAKE_LFLAGS_PPC_64 += $$QMAKE_CFLAGS_PPC_64 QMAKE_LFLAGS += -headerpad_max_install_names QMAKE_LFLAGS_SHLIB += -single_module -dynamiclib QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SHLIB QMAKE_LFLAGS_INCREMENTAL += -undefined suppress -flat_namespace QMAKE_LFLAGS_SONAME += -install_name$${LITERAL_WHITESPACE} QMAKE_LFLAGS_VERSION += -current_version$${LITERAL_WHITESPACE} QMAKE_LFLAGS_COMPAT_VERSION += -compatibility_version$${LITERAL_WHITESPACE} # # Qmake configuration for the GNU C++ compiler # # Before making changes to this file, please read the comment in # gcc-base.conf, to make sure the change goes in the right place. # # To verify that your change has the desired effect on the final configuration # you can use the manual test in tests/manual/mkspecs. # QMAKE_CC = /usr/x86_64-apple-darwin11/usr/bin/x86_64-apple-darwin11-g++ QMAKE_LINK_C = $$QMAKE_CC -F/usr/x86_64-apple-darwin11/usr/Frameworks QMAKE_LINK_C_SHLIB = $$QMAKE_CC -F/usr/x86_64-apple-darwin11/usr/Frameworks QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -g QMAKE_CXX = /usr/x86_64-apple-darwin11/usr/bin/x86_64-apple-darwin11-g++ QMAKE_LINK = /usr/x86_64-apple-darwin11/usr/bin/x86_64-apple-darwin11-g++ -F/usr/x86_64-apple-darwin11/usr/Frameworks QMAKE_LINK_SHLIB = $$QMAKE_CXX -F/usr/x86_64-apple-darwin11/usr/Frameworks QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO QMAKE_PCH_OUTPUT_EXT = .gch QMAKE_CFLAGS_PRECOMPILE = -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT} QMAKE_CFLAGS_USE_PRECOMPILE = -include ${QMAKE_PCH_OUTPUT_BASE} QMAKE_CXXFLAGS_PRECOMPILE = -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT} QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE #include(../common/g++-macx.conf) # # Qmake configuration for the GNU C++ compiler on Mac OS X # # Before making changes to this file, please read the comment in # gcc-base.conf, to make sure the change goes in the right place. # # To verify that your change has the desired effect on the final configuration # you can use the manual test in tests/manual/mkspecs. # QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_DWARF2 QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_DWARF2 QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO += -g $$QMAKE_CFLAGS_DWARF2 QMAKE_LFLAGS_STATIC_LIB += -all_load QMAKE_CFLAGS_X86_64 += -Xarch_x86_64 -mmacosx-version-min=10.5 QMAKE_CFLAGS_PPC_64 += -Xarch_ppc64 -mmacosx-version-min=10.5 QMAKE_CXXFLAGS_X86_64 = $$QMAKE_CFLAGS_X86_64 QMAKE_CXXFLAGS_PPC_64 = $$QMAKE_CFLAGS_PPC_64 QMAKE_OBJECTIVE_CFLAGS_X86_64 = $$QMAKE_CFLAGS_X86_64 QMAKE_OBJECTIVE_CFLAGS_PPC_64 = $$QMAKE_CFLAGS_PPC_64 QMAKE_LFLAGS_X86_64 = $$QMAKE_CFLAGS_X86_64 QMAKE_LFLAGS_PPC_64 = $$QMAKE_CFLAGS_PPC_64 QMAKE_OBJCFLAGS_PRECOMPILE = -x objective-c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT} QMAKE_OBJCFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE QMAKE_OBJCXXFLAGS_PRECOMPILE = -x objective-c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT} QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE load(qt_config)
рдпрд╛рдж рд░рдЦреЗрдВ, Mac OS X рдореЗрдВ,
.a рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред
QtCreator рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ
рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рд╕реВрдЪреА рдореЗрдВ рд╕рднреА рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдП рдЧрдП рдХрдВрдкрд╛рдЗрд▓рд░реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред рдЙрдкрдХрд░рдг - рд╡рд┐рдХрд▓реНрдк - рдирд┐рд░реНрдорд╛рдг рдФрд░ рднрд╛рдЧреЛ - рдЯреВрд▓рдХрд┐рдЯ:

QtCreator рдЖрдо рддреМрд░ рдкрд░ рдПрдмреАрдЖрдИ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдбрдмрд▓-рдЪреЗрдХ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред рдЖрдк рдпрд╣ рднреА рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд▓рд┐рдирдХреНрд╕ рдореЗрдВ x64 GCC рд╕рд┐рд╕реНрдЯрдо 32-рдмрд┐рдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдЗрд╕ рддрдереНрдп рдХреЛ рдирдХрд╛рд░рддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ 32-рдмрд┐рдЯ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рд╕рдВрдХрд▓рдХ рдХреЗ рдмрд╛рдж, рдЖрдк Qt рдкреНрд░реЛрдлрд╛рдЗрд▓ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ:

рд▓реЗрдХрд┐рди рдПрдХ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдЬреЛрдбрд╝рддреЗ рд╕рдордп,
qmake, uic, moc, rcc рдкрд╣рд▓реЗ рдПрдХрддреНрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдХрд╛рдо рдЖрдПрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЛ
qmake рдХреЗ рд╕рд╛рде рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрд╛рдИрдВ рдУрд░ рдПрдХ рдкреАрд▓реЗ рд╡рд┐рд╕реНрдордпрд╛рджрд┐рдмреЛрдзрдХ рдЪрд┐рд╣реНрди рдХрд╛ рдЕрд░реНрде рдЪреЗрддрд╛рд╡рдиреА рд╣реИ, рд▓реЗрдХрд┐рди QtCreator рдРрд╕реЗ Qt рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдЗрдХрди рд▓рд╛рд▓ рд╣реИ, рддреЛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдирд┐рд╖реНрдХреНрд░рд┐рдп рд╣реИред рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдЧрд▓рдд рд╣реЛрдиреЗ рдкрд░ рдРрд╕рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдпрд╛ рдпрджрд┐ рдЖрдк рдЙрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ Qt рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдмрдирд╛рдИ рдЧрдИ рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
рдПрдХ рд╕рдХреНрд░рд┐рдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ Qt рдкреНрд░реЛрдлрд╛рдЗрд▓ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, "рдкреНрд░реЛрдЬреЗрдХреНрдЯ" рдЯреИрдм (Ctrl + 5) рдкрд░ рдЬрд╛рдПрдВред

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдХреЗрд╡рд▓ Qt рд╕рд┐рд╕реНрдЯрдо рдкреНрд░реЛрдлрд╛рдЗрд▓ рдХреЛ "рдмрд┐рд▓реНрдб рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрджрд▓реЗрдВ" рд╕реВрдЪреА рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдРрдб рдмрдЯрди рдХреА рд╕реВрдЪреА рдореЗрдВ рдЕрд╕реЗрдВрдмрд▓реА рдорд╛рдкрджрдВрдбреЛрдВ рдореЗрдВ рд╕рднреА рдХреНрдпреВрдЯреА рдкреНрд░реЛрдлрд╛рдЗрд▓ рдЬреЛрдбрд╝реЗ рдЧрдП рд╣реИрдВред
рдореБрдЦреНрдп рдмрд┐рд▓реНрдб рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ, рдЖрдкрдХреЛ рдХрдВрдкрд╛рдЗрд▓рд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдПрдХ рдЬреЛрдбрд╝реЗ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреА рд╣реЛрдЧреАред рддрд╛рдХрд┐ рджреЛрдиреЛрдВ рдПрдХ рд╣реА рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рд╕реЗ рдереЗред
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ "рдХреНрдпреВрдореЗрдХ" рдФрд░ "рдмрд┐рд▓реНрдб" QtCreator рд╕реЗрдЯ рдХреЗ рдЪрд░рдгреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВред рд▓реЗрдХрд┐рди рд╡рд┐рд╢реЗрд╖ рдЪрд░рдгреЛрдВ "upx" рдФрд░ "dmgbuild" рдореИрдВрдиреЗ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝рд╛ред рд╣рд░ рдмрд╛рд░ рдЬрдм рдЖрдк "рдмрд┐рд▓реНрдб рдкреНрд░реЛрдЬреЗрдХреНрдЯ" рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ "upx" рд╕реНрдЯреЗрдЬ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрджрд┐ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ
upx рдПрдХ рддреНрд░реБрдЯрд┐ рд▓реМрдЯрд╛рдПрдЧрд╛ рдХрд┐ рдлрд╝рд╛рдЗрд▓ рдкрд╣рд▓реЗ рд╣реА рдЗрд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕рдВрд╕рд╛рдзрд┐рдд рд╣реЛ рдЪреБрдХреА рд╣реИред рддреНрд░реБрдЯрд┐ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЕрдЧрд▓рд╛ рдЪрд░рдг рдирд╣реАрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд рдпрджрд┐ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдЕрдкреИрдХреНрд╕ рдиреЗ рдХрд╛рдо рдХрд┐рдпрд╛ рддреЛ dmg рдлрд╝рд╛рдЗрд▓ рдХреЗрд╡рд▓ рдЕрдкрдбреЗрдЯ рдХреА рдЬрд╛рдПрдЧреАред
рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
upx рдЪрд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕реЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рд▓рд┐рдирдХреНрд╕ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдФрд░ рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдиреЗ рдкрд░,
рдЕрдкреИрдХреНрд╕ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рд╕рдВрдХреБрдЪрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ: linux32 / 64, win32, macos32 / 64 рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рд╕реЗ рджреВрд░-рд╕рдВрдкреАрдбрд╝рди-рд╕рдВрдкреАрдбрд╝рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдордВрдЪ рдХреЛ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред
Dmgbuild рдЪрд░рдг рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ
рдореЗрдХ_рдПрдордбреАрдЬреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред рдЙрд╕реЗ
рд░реВрдЯ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛
рд╣реИ , рдЗрд╕рд▓рд┐рдП рдЙрд╕рдиреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ
/ etc / sudoers рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝рд╛
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдФрд░ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ
рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛
рд▓рд┐рдмрд╛рд╕рдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ, рдФрд░ рдпрд╣ рдХреНрдпреВрдЯреА рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рд╕реЗ рдмрд╣реБрдд рджреВрд░ рд╣реИред HID рдХреЗ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдЖрд╡рд╢реНрдпрдХ рдерд╛ред рдирд┐рдореНрди рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝реА рдЧрдИрдВ:
macx { INCLUDEPATH += $$PWD/libusbx/ SOURCES += BootLoader/HIDAPI/mac/hid.c LIBS += -framework IOKit -framework CoreFoundation -lusb-1.0 ICON = AqPicFlash.icns } win32: { INCLUDEPATH += $$PWD/libusbx/ LIBS += -lsetupapi -lole32 SOURCES += BootLoader/HIDAPI/windows/hid.cpp RC_FILE = WinIcon.rc } win32: !win64-x-g++ { LIBS += -L$$PWD/libusbx/ -lusb-1.0-32.dll } win64-x-g++ { LIBS += -L$$PWD/libusbx/ -lusb-1.0-64.dll } unix: !macx { CONFIG += link_pkgconfig PKGCONFIG += libusb-1.0 SOURCES += BootLoader/HIDAPI/linux/hid-libusb.c }
Mac OS X рдФрд░ Linux рдкрд░, рд╣рдо рд╕рд┐рд╕реНрдЯрдо libusb рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рддреЗ рд╣реИрдВред рд╡рд┐рдВрдбреЛрдЬ рдкрд░, рдереЛрдбрд╝реА рдЧрд╣рд░рд╛рдИ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╣рдо
libusb-1.0-32.dll.a рдпрд╛
libusb-1.0-64.dll.a рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рддреЗ рд╣реИрдВ ред рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐
.a рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЕрднреА рднреА
libusb-1.0.dll рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░реЗрдЧрд╛ред рд▓рд┐рдирдХреНрд╕ рдореЗрдВ, рд╣рдо рд╕рд┐рд╕реНрдЯрдо рдпреВрдЯрд┐рд▓рд┐рдЯреА pkgconfig рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ libusb рдХреЗ рд▓рд┐рдП рдкреИрд░рд╛рдореАрдЯрд░ рд▓реЗрддреЗ рд╣реИрдВред рд▓рд┐рдмрд╛рд╕рдм рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕рд┐рд╕реНрдЯрдо рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдФрд░ рдЖрдЗрдХрди рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВред
рд╡рд┐рднрд┐рдиреНрди рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдгрд╛рдореА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ рд╡рд┐рддрд░рд┐рдд рдХрд░рдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рдЖрдк рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
macx { DESTDIR = mac OBJECTS_DIR = mac MOC_DIR = mac UI_DIR = mac RCC_DIR = mac } unix: !macx { DESTDIR = linux OBJECTS_DIR = linux MOC_DIR = linux UI_DIR = linux RCC_DIR = linux } win32 { DESTDIR = windows/release OBJECTS_DIR = windows MOC_DIR = windows UI_DIR = windows RCC_DIR = windows } win64-x-g++ { DESTDIR = win64/release OBJECTS_DIR = win64 MOC_DIR = win64 UI_DIR = win64 RCC_DIR = win64 }
Win64-x-g ++ рдХрд╛ рд▓рдХреНрд╖реНрдп
win32 рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЕрдВрддрд┐рдо рдЖрддрд╛ рд╣реИ рдФрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдЯ рдХрд░рддрд╛ рд╣реИред
рдкрд░рд┐рдгрд╛рдо
рдЕрдм, рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ "рдмрд┐рд▓реНрдб" рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред