1

所以我仍在努力让我损坏graphics.h的库正常工作。我非常接近修复所有奇怪的错误。我已经正确安装了所有东西。我在未定义的错误上遇到了很多麻烦:

    -------------- Build: Debug in LEVEL EDITORRRR (compiler: GNU GCC Compiler)---------------

mingw32-g++.exe -Wall -fexceptions -g  -c "C:\Users\Moustachespy\Documents\LEVEL EDITORRRR\main.cpp" -o obj\Debug\main.o
mingw32-g++.exe  -o "bin\Debug\LEVEL EDITORRRR.exe" obj\Debug\main.o   "C:\Program Files (x86)\CodeBlocks\MinGW\lib\libbgi.a"
C:\Program Files (x86)\CodeBlocks\MinGW\lib\libbgi.a(winbgi.o):winbgi.cxx:(.text+0x133): undefined reference to `GetStockObject@4'
C:\Program Files (x86)\CodeBlocks\MinGW\lib\libbgi.a(winbgi.o):winbgi.cxx:(.text+0x28e): undefined reference to `GetStockObject@4'
C:\Program Files (x86)\CodeBlocks\MinGW\lib\libbgi.a(winbgi.o):winbgi.cxx:(.text+0x478): undefined reference to `GetStockObject@4'
C:\Program Files (x86)\CodeBlocks\MinGW\lib\libbgi.a(winbgi.o):winbgi.cxx:(.text+0x48e): undefined reference to `SelectObject@8'
C:\Program Files (x86)\CodeBlocks\MinGW\lib\libbgi.a(winbgi.o):winbgi.cxx:(.text+0x499): undefined reference to `DeleteObject@4'
C:\Program Files (x86)\CodeBlocks\MinGW\lib\libbgi.a(winbgi.o):winbgi.cxx:(.text+0x4a8): undefined reference to `GetStockObject@4'
C:\Program Files (x86)\CodeBlocks\MinGW\lib\libbgi.a(winbgi.o):winbgi.cxx:(.text+0x4be): undefined reference to `SelectObject@8'
C:\Program Files (x86)\CodeBlocks\MinGW\lib\libbgi.a(winbgi.o):winbgi.cxx:(.text+0x4c9): undefined reference to `DeleteObject@4'
C:\Program Files (x86)\CodeBlocks\MinGW\lib\libbgi.a(winbgi.o):winbgi.cxx:(.text+0x4ec): undefined reference to `SetTextColor@8'
C:\Program Files (x86)\CodeBlocks\MinGW\lib\libbgi.a(winbgi.o):winbgi.cxx:(.text+0x1875): undefined reference to `GetStockObject@4'
C:/Program Files (x86)/CodeBlocks/MinGW/bin/../lib/gcc/mingw32/4.9.2/../../../../mingw32/bin/ld.exe: C:\Program Files (x86)\CodeBlocks\MinGW\lib\libbgi.a(winbgi.o): bad reloc address 0x0 in section `.data'
C:/Program Files (x86)/CodeBlocks/MinGW/bin/../lib/gcc/mingw32/4.9.2/../../../../mingw32/bin/ld.exe: final link failed: Invalid operation
collect2.exe: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 11 second(s))
11 error(s), 0 warning(s) (0 minute(s), 11 second(s))

我能做些什么呢?谷歌不会帮我解决这个问题。如果您需要其他任何东西,请告诉我,我会提供:D

我的代码:

#include <iostream>
#include <graphics.h>
using namespace std;

int main()
{
    cout << "Hello world!" << endl;
    initwindow(1000,1000);
    return 0;

}
4

2 回答 2

0

实际上你的程序是针对 windows gui 32 的。你应该选择 windows gui 32 模板而不是控制台应用程序。

于 2017-06-13T13:51:01.703 回答
0

您似乎没有链接到 gdi32 库,但您包含了标题。

编辑:我不知道代码块是如何工作的。您的讲师是否强迫您使用该编译器,因为您可以在https://www.visualstudio.com/downloads/download-visual-studio-vs免费下载和使用 Microsoft Visual Studio 2015,它是一个更好的编译器,并为您提供您的调试信息中有更多详细信息。除了无法访问您的控制台程序设置和非常稀疏的调试信息之外,我唯一能说的就是确认您在入口点源文件中包含 Windows.h,并且如果您不受使用的编译器的限制,请使用 go VS 2015 它是使用 c++ V14 的最新 Visual Studio,并且会更加用户友好 祝你好运..

于 2016-03-27T11:48:58.457 回答