Проблемы с установкой/пониманием библиотек c++ (новичок-программист)

Я только начал изучать программирование, и у меня возникают проблемы с добавлением библиотек (кроме библиотек STD) в мои программы. Я использую кодовые блоки IDE, и я хотел добавить библиотеку CImg из Интернета.

После прочтения многих потоков я сделал следующие шаги, однако я все еще получаю сообщение об ошибке при загрузке одного из примеров, предоставленных людьми CImg.

  1. Загруженная папка Cimg, в которой есть файл Cimg.h вместе с другими файлами примеров.
  2. Разархивируйте папку на диск Е.
  3. открытые блоки кода> настройки компилятора (компилятор gnu gcc)> библиотеки поиска
  4. в библиотеках поиска у меня есть вкладка компилятора и вкладка компоновщика, где я добавил путь к загруженной папке.
  5. затем, когда я открою пример, предоставленный разработчиком, соберу и запущу его.

Файл cimg.h открывается, и я получаю следующую ошибку:

||=== Build file: "no target" in "no project" (compiler: unknown) ===|
E:\programming\cpp programming\CImg-2.0.0_pre012317\CImg.h||In function 'int cimg_library::cimg::fseek(FILE*, INT_PTR, int)':|
E:\programming\cpp programming\CImg-2.0.0_pre012317\CImg.h|5617|error: '_fseeki64' was not declared in this scope|
E:\programming\cpp programming\CImg-2.0.0_pre012317\CImg.h||In function 'INT_PTR cimg_library::cimg::ftell(FILE*)':|
E:\programming\cpp programming\CImg-2.0.0_pre012317\CImg.h|5626|error: '_ftelli64' was not declared in this scope|
||=== Build failed: 2 error(s), 0 warning(s) (0 minute(s), 10 second(s)) ===|

Пожалуйста, помогите мне, также любезно объясните мне, что я делаю, поскольку я понятия не имею.

РЕДАКТИРОВАТЬ: Как было указано в комментариях, я изменил свой компилятор на 64-битный компилятор TDM-GCC MinGW. Но теперь я получаю ошибку другого типа, потому что я неправильно установил компилятор, потому что я могу запустить hello world с помощью этого компилятора. ошибка, которую я получаю:

||=== Сборка: Debug in hello (компилятор: компилятор GNU GCC) ===| obj\Debug\main.o||В функции cimg_library::CImgDisplay::paint()':| E:\programming\cpp programming\hello\..\CImg-2.0.0_pre012317\CImg.h|9696|undefined reference to__imp_SetDIBitsToDevice'| ||ошибка: ld вернул 1 статус выхода| ||=== Ошибка сборки: 2 ошибки, 0 предупреждений (0 минут, 0 секунд)) ===|


person AlwaysHungrie    schedule 25.01.2017    source источник
comment
Ты это видел? stackoverflow.com/questions/38402058/   -  person nunodsousa    schedule 25.01.2017
comment
нет, спасибо, что упомянули. :)   -  person AlwaysHungrie    schedule 25.01.2017


Ответы (1)


Наконец-то я узнал, в чем были мои ошибки и как их исправить.

  1. Я использовал 32-битный компилятор, поэтому я переключился на 64-битный.
  2. После этого я не подключал библиотеку gdi32. Поэтому, когда я перешел к настройкам компоновщика и добавил gdi32 в связанные библиотеки, все заработало.

Спасибо за помощь.

person AlwaysHungrie    schedule 26.01.2017