簡體   English   中英

代碼塊 graphics.h 不工作

[英]Codeblocks graphics.h not working

當我做:

#include <graphics.h>

它說:

致命錯誤:graphics.h:沒有這樣的文件或目錄

如何解決這個問題?

我正在使用代碼塊 16.01

使用尖括號“<>”假定 graphics.h 是 C 標准庫的一部分。 經過一些研究,該文件似乎不再包含在庫中。 如果你想繼續使用這個庫,你必須找到 graphics.h 並將它放在與你的源代碼相同的位置。

然后,在您的源代碼中,您將編寫: #include "graphics.h"

第 1 步:從http://winbgim.codecutter.org/下載 graphics.h 庫或使用此鏈接

第二步:解壓下載的文件。 你會得到三個文件:

graphics.h
winbgim.h
libbgi.a

第 3 步:將 graphics.h 和 winbgim.h 文件復制並粘貼到編譯器目錄的 include 文件夾中。 (如果您在計算機的 C 驅動器中安裝了 Code::Blocks,請通過: Disk C >> Program Files >> CodeBlocks >> MinGW >> include 。將這兩個文件粘貼到那里。)

第 4 步:將 libbgi.a 復制並粘貼到編譯器目錄的 lib 文件夾中。

第 5 步:打開 Code::Blocks。 轉到Settings >> Compiler >> Linker settings

步驟 6:在該窗口中,單擊“鏈接庫”部分下的添加按鈕,然后瀏覽並選擇在步驟 4 中復制到 lib 文件夾的 libbgi.a 文件。

第 7 步:轉到右側的“其他鏈接器選項”並粘貼以下命令:

-lbgi -lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32

第 8 步:確保第 6 步和第 7 步正確! 這是前兩個步驟的屏幕截圖。 然后,單擊確定。

Graphics.h in codeblocks - Compiler Settings
Global Compiler Settings >> Linker Settings

第 9 步:如果你現在嘗試用 C 或 C++ 編譯 graphics.h 程序代碼,你仍然會得到錯誤。 要解決此問題,請使用文本編輯器打開 graphics.h 文件(在步驟 3 中粘貼在包含文件夾中)。 轉到第 302 行,並將該行替換為以下行:

"int left=0, int top=0, int right=INT_MAX, int bottom=INT_MAX"

如果它是正確的(與上面相同),則保持原樣

保存文件。 完畢!

現在您可以編譯任何包含graphics. h頭文件。 如果你編譯 C 代碼,你仍然會得到一個錯誤提示: “fatal error: sstream : no such file directory” 對於這個問題,如果您的文件擴展名為. c,將其更改為.cpp

將 graphics.h 和 winbgim.h 粘貼到 C:\MinGW\include 文件夾中。 然后將 libbgi.a 粘貼到 C:\MinGW\lib。 這個解決方案將起作用。 因為您的默認編譯安裝位置設置為 C:\MinGW。 否則您可以在 codebolck 中更改編譯器的安裝位置。 設置>>全局編譯器設置>>工具鏈可執行文件

我從這里得到了一個解決方案(你可以參考這個以獲得更多細節): 如何在代碼塊中使用 graphics.h?

步驟 1:要在 CodeBlocks 中設置“graphics.h”,首先設置 winBGIm 圖形庫。 從用於 MingW 的 Borland BGI 仿真下載 WinBGIm

第二步:解壓下載的文件。 會有三個文件:

1. graphics.h
2. winbgim.h
3. libbgi.a

步驟 3:將 graphics.h 和 winbgim.h 文件復制並粘貼到編譯器目錄的 include 文件夾中。 (如果您的計算機 C 盤中安裝了 Code::Blocks,請通過:磁盤

C >> 程序文件 >> 代碼塊 >> MinGW >> 包含

. 將這兩個文件粘貼到那里。)

第四步:將 libbgi.a 復制並粘貼到編譯器目錄的 lib 文件夾中。

第 5 步:打開 Code::Blocks。

設置>>編譯器>>鏈接器設置

.

第 6 步:在該窗口中,單擊“鏈接庫”部分下的添加按鈕,然后瀏覽。

選擇步驟 4 中復制到 lib 文件夾的 libbgi.a 文件。

第 7 步:在右側(即其他鏈接器選項)粘貼命令

-lbgi -lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32

第 8 步:單擊確定

步驟 9:嘗試用 C 或 C++ 編譯 graphics.h 程序,仍然會出現錯誤。 要解決此問題,請使用 Notepad++ 打開 graphics.h 文件(在步驟 3 中粘貼在包含文件夾中)。 轉到第 302 行,並將該行替換為以下行: int left=0, int top=0, int right=INT_MAX, int bottom=INT_MAX,

第十步:保存文件。 完畢!

筆記 :

現在,您可以編譯任何包含 graphics.h 頭文件的 C 或 C++ 程序。 如果你編譯 C 代碼,你仍然會得到一個錯誤提示:“fatal error: sstream : no such file directory”。

對於遵循上述解決方案后仍然出現錯誤(鏈接器錯誤)的人。
http://winbgim.codecutter.org/上的庫的構建是舊的,最后一次構建是在 2006 年左右。使用 64 位工具鏈進行鏈接時會導致鏈接錯誤。 是該庫的最新版本,具有 64 位兼容性。
一些 win32 系統調用也已更新為推薦的 64 位替代品以使其工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM