Файл 'jpeglib.h' не найден

Я пытаюсь прочитать изображение JPG в C++. Я скачал libjpg, как было предложено по этой ссылке https://www.opengl.org/wiki/Image_Libraries и установил его. Хотя, когда я включаю библиотеку, Xcode не в состоянии строить, говоря, что файл 'jpeglib.h' не найден

#include <jpeglib.h>

Я вижу заголовок в каталоге / usr / local / include /, поэтому не могу понять, почему Xcode его не увидит.

ОС и программное обеспечение:

OSX 10.11 (El Capitan)

Xcode 7.0.1

редактировать:

find /usr/local -name \*jpeg\* -print -name \*jpg\* -print
/usr/local/bin/cjpeg
/usr/local/bin/djpeg
/usr/local/bin/jpegtran
/usr/local/Cellar/jpeg
/usr/local/Cellar/jpeg/8d/bin/cjpeg
/usr/local/Cellar/jpeg/8d/bin/djpeg
/usr/local/Cellar/jpeg/8d/bin/jpegtran
/usr/local/Cellar/jpeg/8d/include/jpeglib.h
/usr/local/Cellar/jpeg/8d/lib/libjpeg.8.dylib
/usr/local/Cellar/jpeg/8d/lib/libjpeg.a
/usr/local/Cellar/jpeg/8d/lib/libjpeg.dylib
/usr/local/Cellar/jpeg/8d/share/man/man1/cjpeg.1
/usr/local/Cellar/jpeg/8d/share/man/man1/djpeg.1
/usr/local/Cellar/jpeg/8d/share/man/man1/jpegtran.1
/usr/local/include/jpeglib.h
/usr/local/lib/libjpeg.8.dylib
/usr/local/lib/libjpeg.a
/usr/local/lib/libjpeg.dylib
/usr/local/Library/Aliases/libjpeg
/usr/local/Library/Aliases/libjpeg-turbo
/usr/local/Library/Formula/jpeg-archive.rb
/usr/local/Library/Formula/jpeg-turbo.rb
/usr/local/Library/Formula/jpeg.rb
/usr/local/Library/Formula/jpeginfo.rb
/usr/local/Library/Formula/jpegoptim.rb
/usr/local/Library/Formula/jpegrescan.rb
/usr/local/Library/Formula/mjpegtools.rb
/usr/local/Library/Formula/mozjpeg.rb
/usr/local/Library/Formula/openjpeg.rb
/usr/local/Library/Formula/recoverjpeg.rb
/usr/local/Library/LinkedKegs/jpeg
/usr/local/opt/jpeg
/usr/local/share/man/man1/cjpeg.1
/usr/local/share/man/man1/djpeg.1
/usr/local/share/man/man1/jpegtran.1
/usr/local/src/jpeg-9a
/usr/local/src/jpeg-9a/.deps/cdjpeg.Po
/usr/local/src/jpeg-9a/.deps/cjpeg.Po
/usr/local/src/jpeg-9a/.deps/djpeg.Po
/usr/local/src/jpeg-9a/.deps/jpegtran.Po
/usr/local/src/jpeg-9a/.libs/cjpeg
/usr/local/src/jpeg-9a/.libs/djpeg
/usr/local/src/jpeg-9a/.libs/jpegtran
/usr/local/src/jpeg-9a/.libs/libjpeg.9.dylib
/usr/local/src/jpeg-9a/.libs/libjpeg.a
/usr/local/src/jpeg-9a/.libs/libjpeg.dylib
/usr/local/src/jpeg-9a/.libs/libjpeg.la
/usr/local/src/jpeg-9a/.libs/libjpeg.lai
/usr/local/src/jpeg-9a/cdjpeg.c
/usr/local/src/jpeg-9a/cdjpeg.h
/usr/local/src/jpeg-9a/cdjpeg.o
/usr/local/src/jpeg-9a/cjpeg
/usr/local/src/jpeg-9a/cjpeg.1
/usr/local/src/jpeg-9a/cjpeg.c
/usr/local/src/jpeg-9a/cjpeg.o
/usr/local/src/jpeg-9a/djpeg
/usr/local/src/jpeg-9a/djpeg.1
/usr/local/src/jpeg-9a/djpeg.c
/usr/local/src/jpeg-9a/djpeg.o
/usr/local/src/jpeg-9a/jpegint.h
/usr/local/src/jpeg-9a/jpeglib.h
/usr/local/src/jpeg-9a/jpegtran
/usr/local/src/jpeg-9a/jpegtran.1
/usr/local/src/jpeg-9a/jpegtran.c
/usr/local/src/jpeg-9a/jpegtran.o
/usr/local/src/jpeg-9a/libjpeg.la
/usr/local/src/jpeg-9a/libjpeg.map
/usr/local/src/jpeg-9a/libjpeg.txt
/usr/local/src/jpeg-9a/makcjpeg.st
/usr/local/src/jpeg-9a/makdjpeg.st
/usr/local/src/jpeg-9a/makljpeg.st
/usr/local/src/jpeg-9a/maktjpeg.st
/usr/local/src/jpegsrc.v9a.tar.gz

1 ответ

Решение

ОК, похоже, вам просто нужно:

  1. добавлять /usr/local/include к пути поиска заголовка (выключите рекурсивный режим). Это все еще выглядит актуально.
  2. Ссылка явно против /usr/local/lib/libjpeg.a изнутри Ссылка бинарная с библиотеками ( справка). Это будет ссылка в статической библиотеке, что означает, что нет необходимости распространять динамическую библиотеку JPEG с вашим приложением.
Другие вопросы по тегам