我试图在命令提示符中用gcc编译C,但是我得到了这个对‘`wWinMain’错误的未定义的引用。
我首先得到了对‘`WinMain’的未定义的引用,但是我通过添加参数来修正这个问题:
-municode
现在‘`wWinMain’还没有定义。怎么解决这个问题?
C:\Development\WA\Library\Backend\C\CB\CB>gcc CB.c -lssl -lcrypto -municode
C:/Strawberry/c/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
C:/Strawberry/c/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../x86_64-w64-mingw32/lib/../lib/libmingw32.a(lib64_libmingw32_a-crt0_w.o):crt0_w.c:(.text+0x21): undefined reference to `wWinMain'
collect2.exe: error: ld returned 1 exit status
发布于 2021-03-10 15:19:26
gcc CB.c -lssl -lcrypto
将编译并链接一个应用程序,该应用程序在Windows上默认为窗口应用程序,该应用程序的入口点为WinMain
(您的库显然没有也不需要)。
添加-municode
只是指示系统使用windows,然后入口点变成wWinMain
,您仍然有同样的问题。
若要构建DLL,请添加-shared
:gcc CB.c -shared -lssl -lcrypto
https://stackoverflow.com/questions/66566134
复制相似问题