Есть ли кто-нибудь, кому удалось включить libjpeg в какой-то компилятор? Я перепробовал все: Dev C ++, VS10, CodeBlocks, скопировать заголовки и библиотеку вручную, добавить с компоновщиком, но ничего. Прямо сейчас я действительно признан, так как нет официального руководства о том, как скомпилировать его в любом компиляторе. Я был бы очень рад, если бы кто-нибудь смог предоставить руководство по компиляции библиотеки в любом компиляторе.
Заранее спасибо.
Вот как я построил libjpeg, используя MinGW для Windows:
Я получил копию от http://sourceforge.net/projects/mingw/.
Цитирование с www.mingw.org:
MSYS — это набор утилит GNU, таких как bash, make, gawk и grep, позволяющих создавать приложения и программы, которые зависят от традиционных инструментов UNIX.
Нам нужно будет запустить configure
скрипт, который поставляется с исходниками libjpeg.
От http://www.ijg.org/, возьмите пакет формата Unix (Windows не будет работать с этой процедурой). Я взял jpeg_8d
версия.
Я сделал временный каталог с именем tmp
в D:\
, но вы можете выбрать то, что соответствует вашим потребностям. Важным является название путей в MSYS. Как это приносит некоторые * Unixity * для Windows пути не могут быть использованы в их первоначальном виде.
В двух словах:
C:\path\to\file
становится /c/path/to/file
на земле MSYS, так
D:\tmp
становится /d/tmp
,
Разархивируйте источники libjpeg в D:\tmp
так что у вас есть jpeg-8d
каталог там.
Создать jpeg-build
каталог внутри D:\tmp
, он будет содержать встроенную библиотеку.
Теперь все готово для сборки.
Это мантра строительства на земле Unix. Должна быть добавлена опция для перенаправления процесса установки на D:\tmp\jpeg-build
,
Выполните следующие команды в оболочке MSYS (также называемой оболочкой MinGW в меню «Пуск» Windows):
cd /d/tmp/jpeg-8d
./configure --prefix=/d/tmp/jpeg-build
make
make install
В качестве дополнительного шага вы можете запустить make test
для безопасности.
Эти команды будут создавать как статические, так и общие версии libjpeg.
Если все работает нормально, вы можете удалить D:\tmp\jpeg-8d
каталог, но сохранить jpeg-build
один. Это содержит:
include
каталог, содержащий заголовки libjpeg. Вы можете переместить их в каталог заголовков вашего компилятора.lib
каталог, с .a
файл для передачи компоновщику. Вы можете переместить их в каталог библиотеки вашего компилятора.bin
каталог, содержащий общую библиотеку libjpeg libjpeg-8.dll
и инструменты JPEG.share
каталог, содержащий man
страницы для инструментов JPEG.Теперь вы можете собрать свою программу и связать ее с libjpeg, указав правильные пути включения и библиотеки.
Вы можете найти много подробностей о процессе сборки и установки libjpeg в install.txt
внутри исходного пакета.
Я надеюсь, что это будет полезно.
Скомпилировать libjpeg
9 в Visual Studio 2012, вот шаги (после разархивирования файла архива):
Скачать файл WIN32.MAK
(например, из http://www.bvbcode.com/code/f2kivdrh-395674-down) и поместите копию в корневой каталог исходного кода (возможно, C:\jpeg-9
, но это зависит от того, где вы разархивировали его). Я буду ссылаться на этот каталог как %jpegsrc%
впредь. Наличие этого файла важно; в противном случае шаг 3 приведет к ошибке.
В командной строке Visual Studio откройте %jpegsrc%
:
cd %jpegsrc%
В той же командной строке выполните следующее:
NMAKE /f makefile.vc setup-v10
Это создаст два решения Visual Studio 2010 в %jpegsrc%
: jpeg.sln
а также apps.sln
,
Откройте каждое решение в Visual Studio 2012. Каждое из них предложит вам обновить все проекты до формата 2012. Нажмите «Обновить». Один раз, когда я сделал это, подсказка не появилась. В этом случае щелкните правой кнопкой мыши на jpeg
решение в обозревателе решений и выберите «Обновить проекты VC ++ …», что приведет к тому же запросу.
Сохраните и постройте каждое решение как обычно. (Вы должны построить jpeg.sln
решение до apps.sln
, так как последнее зависит от первого.)
Примечание: этот процесс должен работать правильно в Visual Studio 2010, без обновления, но я не проверял его.
Обновить: Этот метод все еще работает в Visual Studio 2015 для libjpeg-9a
,
Собрать jpeg.lib с VS10 действительно просто.
Сначала загрузите исходный код libjpeg в формате zip. В то время, когда я пишу это, вы можете найти это Вот.
Затем распакуйте содержимое zip-файла на свой диск.
Затем откройте оболочку командной строки VS2010 (или вызовите vcvarsall.bat в любом окне командной строки), перейдите в исходный каталог jpeg (jpeg-8d в указанной выше загрузке) и введите следующее:
nmake -f makefile.win setup-v10
Это создаст два решения VS2010 и кучу файлов проекта. Решения:
jpeg.sln
, который строит jpeg.lib
apps.sln
, который строит примеры приложений.Удачи!
Если вы хотите режим отладки, а также в MSVC. Следуйте методу AthanasiusOfAlex, создайте релиз, затем:
Построй и готово!
Если у вас не установлена Visual Studio 2010, вот что работает в Visual Studio 2017:
Основные / Общие шаги:
cd
) куда вы распаковали исходный код библиотекиVS 2017 Подход:
Включите каталог Windows SDK v7.1A (требуется для Win32.Mak позже), запустив: set INCLUDE=%INCLUDE%;c:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include
Бежать nmake /f makefile.win setup-v15
(обратите внимание на v15 для VS2017 здесь)
Далее следуйте указаниям @AthanasiusOfAlex, чтобы обновить решение Visual Studio 2010 до версии Visual Studio, которую вы используете. Если вам нужна конфигурация отладки, следуйте объяснениям @SteveEng.
Ошибки, с которыми вы можете столкнуться:
nmake
терпит неудачу и говорит вам, что не знает, как сделатьjconfig.vc
в jconfig.h
nmake
дает сбой и сообщает, что Win32.Mak не может быть найден, вручную скопируйте его из каталога SDK, упомянутого в шаге 4, в исходный каталог libjpeg. Если у вас не установлена эта версия SDK, загрузите файл с заслуживающего доверия ресурса.nmake
терпит неудачу и говорит вам, что не знает, как сделать setup-v15
, проб и ошибок, начиная с setup-v10
, setup-v11
и т. д. Это версии VS, и одна из них должна работать, если у вас установлена любая версия VS, более поздняя, чем VS 2008.Надеюсь, что это помогает людям пережить подобную боль с этим.