[英]C Programming undefined reference to `WinMain@16'
我正在嘗試使用帶有記事本的 gcc (tdm-1) 4.7.1 和 Windows 10 上的命令提示符編譯以下代碼。以前將 bin 文件夾路徑添加到全局變量,但是當我嘗試編譯時出現以下錯誤“未定義引用到`WinMain@16'"。但是相同的代碼在代碼塊上也能正常工作!。
PS:我像這樣編譯它“cd /d path of code then gcc filename.c”
#include<stdio.h>
int main(){
printf("Hello world");
return 0;
}
我偶然發現出了什么問題。通過記事本編寫代碼后,我忘記保存文件 ctrl+s,所以我只是嘗試編譯空文件。
這很奇怪。
gcc --version
gcc.exe (tdm64-1) 5.1.0 版權所有 (C) 2015 Free Software Foundation, Inc。這是免費軟件; 請參閱復制條件的來源。 沒有保修; 甚至不是為了特定目的的適銷性或適合性
我沒有任何選擇
gcc filename.c
a.exe
你好,世界
但是請注意
gcc -municode filename.c
生成鏈接器錯誤
D:/bin-win64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/lib/../lib/libmingw32.a(lib64_libmingw32_a-crt0_w.o)
: 在函數wmain
:C:/crossdev/src/mingw-w64-v4-git/mingw-w64-crt/crt/crt0_w.c:23
: 未定義引用wWinMain
collect2.exe
:錯誤:ld
返回 1 個退出狀態
MinGW 中的啟動函數是mainCRTStartup
,它調用 main。 如果沒有用戶指定main
,則運行時會為您提供一個調用WinMain
。
所以你的應用程序也應該從命令行編譯。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.