我找到了一个例子,其中gdi32.lib应该以某种方式链接,但我不知道如何从GCC命令行执行此操作.我发现的所有示例都建议在MS Visual Studio或Eclipse中的项目属性中执行此操作.
bsod.cpp:
#include <windows.h>
int main() {
HDC dc = CreateCompatibleDC (NULL);
SetLayout (dc, LAYOUT_RTL);
ScaleWindowExtEx (dc, -2147483647 - 1, -1, 1, 1, NULL);
}
Run Code Online (Sandbox Code Playgroud)
我的GCC编译器来自Ruby Development Kit(似乎是MinGW).
只需将其添加到链接命令行:
-lgdi32
Run Code Online (Sandbox Code Playgroud)
所以,例如你的链接线看起来像
gcc -o executable somemain.o -lgdi32
Run Code Online (Sandbox Code Playgroud)
确保在需要它之后指定库.
例如,如果您有一个名为的C++源文件myprog.cpp,那么您将运行
g++ -o myprog myprog.cpp -lgdi32
Run Code Online (Sandbox Code Playgroud)
或者分开命令
g++ -c myprog.cpp
g++ -o myprog myprog.o -lgdi32
Run Code Online (Sandbox Code Playgroud)
您可以为前两个命令添加优化或调试选项.link命令实际上并不需要其他任何东西.