Я добавил X11 в свои пути поиска заголовков, пути поиска библиотек и связал двоичный файл с библиотекой X11 в настройках сборки и этапах сборки в XCode, однако я все еще получаю ошибки, показанные на рисунке ниже. Я на 99,999% уверен, что проблема в X11, потому что, когда я отключаю возможности отображения, предупреждений нет. Любые идеи о том, что я могу сделать дальше?
Проблемы X11 при использовании заголовка CImg в XCode на Mac OSX 10.11.6
Ответы (1)
Я думаю, что у вас немного неправильные настройки сборки. Вот очень простая программа для начала — вы можете выбрать отображение файлов PNG, TIFF или JPEG, используя libpng
, libtiff
или libjpeg
, которые, как я предполагаю, вы установили с помощью homebrew с помощью:
brew install libpng libjpeg libtiff
Вот код:
#define cimg_display 1
#define cimg_use_png 1
#define cimg_use_tiff 1
#define cimg_use_jpeg 1
#include "CImg.h"
using namespace cimg_library;
int main() {
// Load image
CImg<unsigned char> image("/Users/mark/Desktop/test.tif");
// CImg<unsigned char> image("/Users/mark/Desktop/test.png");
// CImg<unsigned char> image("/Users/mark/Desktop/test.jpg");
// CImg<unsigned char> image("/Users/mark/Desktop/test.pnm");
image.display();
}
Единственные необходимые настройки сборки следующие:
а также
Один /Users/mark/src/CImg
предназначен для файла заголовка CImg.h
, которым я управляю с помощью git
, поддерживая его синхронизацию с дистрибутивом CImg
на GitHub.
Обратите внимание на следующее:
CImg может читать изображения NetPBM (PGM/PBM/PPM и фактически PFM) без дополнительного кода, библиотек или зависимостей.
CImg может читать TIFF, PNG, JPEG без использования ImageMagick, если вы
#define cimg_use_tiff
или#define cimg_use_png
или#define cimg_use_jpeg
, пока вы устанавливаете путь включения пути к библиотеке и имена библиотек, как я показал выше.CImg может прочитать все, что может прочитать ImageMagick, если вы установите этот пакет.
header search path
должно быть установлено на /opt/X11/include
, потому что внутри CImg.h
он делает #include <X11/XLib.h
, который прикрепляется к концу вашего пути поиска.
- person Mark Setchell; 23.01.2018
CImg.h
, возьмите и его новую копию - ее вообще не нужно менять.
- person Mark Setchell; 24.01.2018