C++ graphics.h -lbgi не найден
У меня есть этот код:
#include<graphics.h>
int main( )
{
initwindow( 700 , 700 , "MY First Program");
circle(200, 200, 150);
getch();
return 0;
}
но я получаю эту ошибку:
ld||cannot find -lbgi|
||=== Build failed: 1 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|
Я добавил его в опции компоновщика, а также другие вещи.
Что я должен делать?
3 ответа
Загрузите это и поместите в папку lib вашего компилятора C. Также не забудьте добавить в линкеры:
-lbgi
-lgdi32
-lcomdlg32
-luuid
-loleaut32
-lole32
После выполнения выше, вы получите фактическую ошибку компиляции, принадлежащую initgraph()
или другой.
Это работает для меня в Codeblocks 13.12.
Если вы программируете на C++11, вы должны знать, что <graphics.h>
устарела в C++ 11. Если вы компилируете его в Turbo C++, вы должны использовать initgraph()
и укажите путь к папке BGI. Для получения более подробной информации, проверьте это: http://www.programmingsimplified.com/c/graphics.h
Вы должны включить initgraph()
функция. Добавь это:
int gd=DETECT,gm;
initgraph(&gd,&gm,"c:\\TC\BGI"); //Path where BGI folder appears
Возможно, ваше местоположение по умолчанию для компилятора не в папке ide. В этой ситуации вам необходимо скопировать graphics.h и winbgim.h в папку include, а libbgi в папку lib по умолчанию для компилятора, которая также может быть C:\MinGW\include и C:\MinGW\lib.