如何从命令行添加gdi32.lib

Pau*_*aul 2 linker gcc

我找到了一个例子,其中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).

rub*_*nvb 8

只需将其添加到链接命令行:

-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命令实际上并不需要其他任何东西.