编译时的 CImg 库 return 对 `__imp_SetDIBitsToDevice' 的未定义引用
CImg library when compiling return undefined reference to `__imp_SetDIBitsToDevice'
我在安装了 MinGW 编译器的 Windows 10 上使用 VSCode。我试过使用 CImg 库编辑图像 (http://cimg.eu/), and when I'm trying to compile code from tutorial (http://cimg.eu/reference/group__cimg__tutorial.html) 我得到这个错误:
C:\Users\Martini\AppData\Local\Temp\ccBswQ5w.o:tutorial.cpp:(.text$_ZN12cimg_library11CImgDisplay5paintEv[_ZN12cimg_library11CImgDisplay5paintEv]+0xba): undefined reference to `__imp_SetDIBitsToDevice'
collect2.exe: error: ld returned 1 exit status
我有 CImg.h 个文件位于 tutorial.cpp 的文件夹中。这是我用来编译的命令:
g++ tutorial.cpp -o tutorial.exe
这是我第一次在 C++ 中使用库,CImg 看起来相当容易使用,但是如果您使用其他库来编辑照片,请告诉我。
提前致谢!
我认为您需要 link 到 Windows 上的 GDI32。类似于:
g++ tutorial.cpp -lgdi32 -o tutorial.exe
我在安装了 MinGW 编译器的 Windows 10 上使用 VSCode。我试过使用 CImg 库编辑图像 (http://cimg.eu/), and when I'm trying to compile code from tutorial (http://cimg.eu/reference/group__cimg__tutorial.html) 我得到这个错误:
C:\Users\Martini\AppData\Local\Temp\ccBswQ5w.o:tutorial.cpp:(.text$_ZN12cimg_library11CImgDisplay5paintEv[_ZN12cimg_library11CImgDisplay5paintEv]+0xba): undefined reference to `__imp_SetDIBitsToDevice'
collect2.exe: error: ld returned 1 exit status
我有 CImg.h 个文件位于 tutorial.cpp 的文件夹中。这是我用来编译的命令:
g++ tutorial.cpp -o tutorial.exe
这是我第一次在 C++ 中使用库,CImg 看起来相当容易使用,但是如果您使用其他库来编辑照片,请告诉我。
提前致谢!
我认为您需要 link 到 Windows 上的 GDI32。类似于:
g++ tutorial.cpp -lgdi32 -o tutorial.exe