Ⅰ mingw安裝完後該如何編譯C語言
應該是先安裝MSYS,再安裝
mingw , 在mingw文件夾裡面應該有個bin
文件夾 ,留意一下該文件夾裡面「應該」有gcc.exe的應用程序,假設該bin文件夾的全稱路徑是X:\..\mingw\bin,那麼將它添加將它添加到環境變數裡面。
上面是配置環境,下面是編譯運行一個C程序:
在比如新建"D:\main.c"文件,裡面寫main(){
printf("Hello!\n");
},保存;
然後打開cmd控制台,執行:gcc
D:\main.c
-o
D:\main.exe
這個時候D盤會生成名為main的應用程序,控制台繼續執行:D:\main.exe
就運行了,應該顯示出Hello!了
Ⅱ MinGW的GCC編譯器編譯調試中文程序亂碼
你的源文件的文本格式與系統控制台的字元模式不匹配,修改控制台字元模式或者修改源文件的文本格式都可以。
控制台字元模式就是指代碼頁 936是簡體中文(gbk)。
Ⅲ codeblocks+mingw怎麼實現靜態編譯
你在設置->編譯器與調試器->連接器設置->其他鏈接器選項 裡面加:-static
這樣因該最直接。
你是不是出現丟失libgcc_s_dw2-1.dll
這個出現在用g++ 編譯C的情況,如果你只用到那個C,而不用C++的話可以修改工具鏈可執行文件中動態鏈接器:把mingw32-g++.exe改為mingw32-gcc.exe,連接器就不用加-static了。
如果把動態鏈接器改為mingw32-gcc.exe 編譯C++的時候你就要在鏈接器選項里加
-lstdc++ -static兩個選項了。
總之:如果你只用C++的話,應該不會出現這個問題。
只用C的話,建議你修改工具鏈可執行文件中動態鏈接器:把mingw32-g++.exe改為mingw32-gcc.exe
Ⅳ Ubuntu下使用mingw-w64交叉編譯ffmpeg
網上大部分編譯windows版ffmpeg的教程都是基於msys+mingw的,完全運行在windows上。由於msys2的性能實在是太糟糕了,編譯速度太感人,因此決定研究Linux下使用mingw-w64交叉編譯
先是安裝ubuntu版的mingw-w64
sudo apt install mingw-w64
然後在configure ffmpeg的時候,在正常的配置項之後加上。
--arch=x86 --target-os=mingw32 --cross-prefix=i686-w64-mingw32-
上面是32位庫編譯的配置,64位的如下
--arch=x86_64 --target-os=mingw32 --cross-prefix=x86_64-w64-mingw32-
而且最好使用動態庫,靜態庫還需要鏈接一大堆mingw的庫實現,而且還可能鏈接失敗。但這樣編譯出來的動態庫,還需要依賴 libgcc_s_sjlj-1.dll。如果要移除這個依賴,configure的時候還要加上 --extra-ldflags='-static-libgcc'
Ⅳ 用mingw32 gcc 一編譯就出一大堆錯誤,應該怎麼解決
編譯出錯,說明代碼寫的有問題,一點點的根據錯誤去改。
如果在VC/VS下編譯通過,那就是使用了VC/VS的介面。
要改成mingw的介面,或者自己實現。