A. cmake + Qt 5 編譯出錯,請幫忙看看怎麼解決
Qt在編譯時,需要首先使用uic.exe編譯UI文件,通過moc.exe處理Q_OBJECT之類的宏,當然你可以去掉這些定義,否則就需要加上:
# COMPILE UIs
SET(UIS
mnwindow
)
FOREACH (ui_file ${UIS})
SET(TMP_IN "${PROJECT_SOURCE_DIR}/res/${ui_file}.ui")
SET(TMP_OUT "${PROJECT_BINARY_DIR}/ui_${ui_file}.h")
EXECUTE_PROCESS(COMMAND ${QT_FOLDER}/bin/uic.exe -o ${TMP_OUT} ${TMP_IN})
MESSAGE(STATUS "EXEC=${QT_FOLDER}/bin/uic.exe -o ${PROJECT_BINARY_DIR}/ui_${ui_file}.h ${PROJECT_SOURCE_DIR}/res/${ui_file}.ui")
ENDFOREACH(ui_file)
# CREATE MOC
SET(HEADERS
mainwindow
)
FOREACH (header_file ${HEADERS})
SET(TMP_IN "${PROJECT_SOURCE_DIR}/inc/${header_file}.h")
SET(TMP_OUT "${PROJECT_BINARY_DIR}/moc_${header_file}.cpp")
EXECUTE_PROCESS(COMMAND ${QT_FOLDER}/bin/moc.exe -o ${TMP_OUT} ${TMP_IN})
SET(MOCS ${MOCS} ${PROJECT_BINARY_DIR}/moc_${header_file}.cpp)
MESSAGE(STATUS "EXEC=${QT_FOLDER}/bin/moc.exe -o ${PROJECT_BINARY_DIR}/moc_${header_file}.cpp ${PROJECT_SOURCE_DIR}/inc/${header_file}.h")
ENDFOREACH(header_file)
free c#.net qr creator
這里要注意的是:EXECUTE_PROCESS在COMMAND後面不能加引號,命令直接寫,否則執行的程序也不會出錯,但也不會正常運行.
B. C語言程序怎麼用QT編寫圖形界面
qt代碼都是c++的。先用qt把界面畫出來。然後在qt的事件處理函數 qt里用信號槽。吧c socket和mysql的代碼加進去就可以了。
C. C語言開發安裝Qt
首先qt不是一門語言,而是c++的一組類庫,當然不只是類庫。
qt-creator-opensource-windows-x86-3.5.0.exe 相當於notepad,高級一點的富文本編輯器;
qt-opensource-windows-x86-mingw492-5.5.0.exe qt + mingw那一套,也就是一鍵安裝之後同時擁有了qt,g++,gdb,qt creator就是不用做什麼配置直接用了。
qt-opensource-windows-x86-msvc2013_64-5.5.0.exe 如果你已經熟悉了vs2013,你裝了這個就可以用vs2013來開發qt項目。好像以前那個2010的版本是搞不起事的,慎裝。
qt-vs-addin-1.2.4-opensource.exe 騙你的,僅僅安裝上面那個是不夠的,你需要安裝這個並做一些配置才可以。
總的來說,ide包括以下幾個方面:
富文本編輯器(qt creator),一個類庫及其實現(qt),編譯器(g++,ms),調試器(gdb,ms)組成的,高手嘛想怎麼搭就怎麼搭。像我們這種小白,一鍵傻瓜安裝(第二個)就可以了,包治百病。
D. Qt creator 如何設置靜態編譯
Qt默認的編譯方式是動態編譯的,但是有時候編寫的程序要發布出去,帶很多動態庫文件是很繁瑣的,此時就需要靜態編譯程序,Qt要實現靜態編譯必須庫文件也是靜態編譯的,可以用這個命令編譯靜態庫:
1.將C:\Qt\2010.05\qt\mkspecs\win32-g++\qmake.conf文件中的QMAKE_LFLAGS = -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc
改為
QMAKE_LFLAGS = -static -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc
2.在開始菜單里找到Qt Command Prompt並運行,輸入命令: configure -static -debug-and-release -no-exceptions -L "C:\Qt\2010.05\qt\include" -L "C:\Qt\2010.05\qt\lib"
-L指定一下路徑,防止用到vc的頭文件
選擇開源:O;選擇license:y;
3.上一條命令運行成功後再輸入命令: mingw32-make sub-src
等1 ~3 小時可能就運行完了 完成後就可以了。
E. qt中怎樣使用c語言編寫成動態庫
receive =new QPushButton("receive",this);
receive->setGeometry(700, 300, 80, 30);//第一個參數,橫坐標的其實
//位置,第二個總坐標的其實位置,第三個為寬度,第四個為高度
F. linux下qtcreator怎麼配置c++的編譯器
編譯器:GCC編譯器可以用來編譯C和C++源程序,C編譯器通過文件的後綴來判斷是C程序還是C++程序。一般來說C源文件的後綴為「.C」,而C++源文件的後綴為「.C」或「C++」。
但GCC編譯器只能編譯C++源程序,不能與使用的庫連接,因此用G++來完成C++程序的編譯與連接,該程序會自動調用GCC來編譯。
G. QT 5.5.0 怎麼設置才能實現靜態編譯
qt默認的編譯方式是動態編譯的,但是有時候編寫的程序要發布出去,帶很多動態庫文件是很繁瑣的,此時就需要靜態編譯程序,qt要實現靜態編譯必須庫文件也是靜態編譯的,可以用這個命令編譯靜態庫:
1.將c:\qt\2010.05\qt\mkspecs\win32-g++\qmake.conf文件中的qmake_lflags
=
-enable-stdcall-fixup
-wl,-enable-auto-import
-wl,-enable-runtime-pseudo-reloc
改為
qmake_lflags
=
-static
-enable-stdcall-fixup
-wl,-enable-auto-import
-wl,-enable-runtime-pseudo-reloc
2.在開始菜單里找到qt
command
prompt並運行,輸入命令:
configure
-static
-debug-and-release
-no-exceptions
-l
"c:\qt\2010.05\qt\include"
-l
"c:\qt\2010.05\qt\lib"
-l指定一下路徑,防止用到vc的頭文