1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>LibRaw: компиляция и установка</title>
</head>
<body>
<a href=index-rus.html>[вернуться к оглавлению]</a>
<h1>LibRaw: компиляция и установка</h1>
<p>LibRaw поставляется в исходных текстах, для использования необходимо их скомпилировать (и, при желании,
установить в системные каталоги с библиотеками и include-файлами)</p>
<a name="unix"></a>
<h2>Unix-системы (FreeBSD, Linux, Mac OS X)</h2>
<p>
Для сборки библиотеки вам нужен работающий компилятор C++ (gcc версий 3.x или 4.x вполне подойдет, сборка
другими компиляторами не тестировалась) и программа make. Никаких других библиотек, утилит и т.п. - не
требуется.</p>
<p>
LibRaw тестировалась на 32-битных и 64-битных Unix-системах на x86- (и AMD64-) совместимых процессорах. Сборка
и работоспособность на каких-либо еще архитектурах не тестировалась.
</p>
<h3>Компиляция библиотеки и примеров</h3>
<p>
Распакуйте скачанный дистрибутив. Если вы хотите использовать дополнительные наборы интерполяторов
(дебайеризаторов), распакуйте соответствующий архив LibRaw-demosaic-pack:
</p>
<pre>
tar xzvf LibRaw-X.YY.tar.gz
tar xzvf LibRaw-demosaic-pack-X.YY.tar.gz
</pre>
<p>
Перейдите в каталог ./LibRaw-X.YY и запустите <b>./configure</b> а затем <b>make</b>:
</p>
<pre>
cd LibRaw-X.YY
./configure # см. ниже параметры ./configure
make
</pre>
<p>В результате скомпилируются:</p>
<ul>
<li>Библиотеку libraw.a в каталоге lib/</li>
<li><a href=Samples-LibRaw-rus.html>Примеры</a> в каталоге bin/ (исходные тексты примеров находятся в каталоге
samples).</li>
</ul>
<p>В текущей версии собираются только статические библиотеки:</p>
<ul>
<li>libraw.a - не thread_safe вариант</li>
<li>libraw_r.a - thread safe</li>
</ul>
<p>Для установки выполните команду make install от пользователя с соответствующими правами:
<pre>
sudo make install
</pre>
<h3>Параметры сборки</h3>
<p>
Для задания параметров сборки (использование OpenMP, использование LCMS) и установки, запустите
скрипт <b>configure</b> с нужными параметрами (./configure --help покажет список параметров).
<p>
Описание нестандартных параметров:
<dl>
<dt>--enable-openmp<br/>
--disable-openmp
</dt>
<dd>Включает/выключает проверки поддержки OpenMP если ваш компилятор поддерживает OpenMP. По-умолчанию,
проверка поддержки OpenMP включена.
Если проверкой установлено, что OpenMP поддерживается, то LibRaw будет собрана с OpenMP.
</dd>
<dt>--enable-lcms<br/>
--disable-lcms
</dt>
<dd>Включает-выключает проверку наличия библиотеки LCMS на компьютере. Если проверка включена и
библиотека найдена, то LibRaw будет скомпилирована с поддержкой LCMS.
</dd>
<dt>
--enable-examples<br/>
--disable-examples
</dt>
<dd>Включает-выключает компиляцию примеров использования LibRaw</dd>
<dt>
--enable-demosaic-pack-gpl2<br/>
--enable-demosaic-pack-gpl2=FOLDERNAME<br/>
--enable-demosaic-pack-gpl2=no<br/>
--disable-demosaic-pack-gpl2
</dt>
<dd>Включает (первые две опции)/выключает проверку наличия LibRaw-demosaic-pack-GPL2.
Если проверка включена и каталог с дополнительными дебайеризаторами найден - LibRaw будет собрана с
дополнительными методами интерполяции.
<br/>
Поиск дополнительных дебайеризаторов производится:
<ul>
<li>Если каталог с дебайеризаторами задан через <b>--enable-demosaic-pack-gpl2=FOLDERNAME</b>,
то только в каталоге FOLDERNAME.
</li>
<li>
Если каталог не указан то поиск будет производиться в
<ul>
<li>./LibRaw-demosaic-pack-GPL2 (внутри текущего каталога LibRaw)
</li>
<li>../LibRaw-demosaic-pack*GPL2* (на один уровень выше).
</ul>
Во втором случае дополнительный каталог будет подключен только если найден ровно один каталог,
удовлетворяющий маске. Если найдено несколько, подключен не будет ни один из них (т.к. двусмысленность),
задайте в этом случае нужный каталог вручную.
</ul>
</dd>
<dt>
--enable-demosaic-pack-gpl3<br/>
--enable-demosaic-pack-gpl3=FOLDERNAME<br/>
--enable-demosaic-pack-gpl3=no<br/>
--disable-demosaic-pack-gpl3
</dt>
<dd>То же самое, что для demosaic-pack-GPL2 (см. выше).
</dl>
<h2>Windows, сборка под Cygwin</h2>
<p>
Сборка и установка полностью аналогична <a href="#unix">сборке и установке на unix-системах</a>.
</p>
<h2>Windows, native-сборка</h2>
<p>
Сборка под Windows делается в три шага:
</p>
<ul>
<li>Распакуйте дистрибутив (если у вас нет tar+gzip, возьмите дистрибутив LibRaw в формате .ZIP), перейдите в
каталог LibRaw-X.YYY
</li>
<li>Нужно установить переменные окружения так, чтобы компилятор/линковщик находил библиотеки и
include-файлы. Для Visual C++ это делается запуском <b>vcvars32.bat</b>.
</li>
<li>
Запускается<br/>
<b>nmake -f Makefile.msvc</b><br/>
</li>
</ul>
<p>
Если все пути установлены правильно и include-файлы/библиотеки нашлись, то скомпилируются:</p>
<ul>
<li>Библиотека libraw_static.lib в каталоге lib</li>
<li>Динамическая библиотека bin/libraw.dll и линковочная библиотека к ней lib/libraw.lib</li>
<li>Примеры в каталоге bin</li>
</ul>
<p> Под Win32 собирается только thread-safe библиотека, ее можно использовать и не с
multi-threaded-приложениями. Все примеры собираются с динамической библиотекой (DLL),
при необходимости использовать статическую сборку, нужно линковаться с библиотекой libraw_static.lib а при
компиляции указывать директиву препроцессора /DLIBRAW_NODLL.
</p>
<p>
Windows-версия в настоящее время собирается без поддержки библиотеки LCMS (ICC-профилей).
</p>
<p>
При сборке DLL экспортируются все публичные функции, в дальнейшем экспортируемое подмножество может быть
уменьшено.
</p>
<p>
К сожалению, пути к include/библиотекам зависят от способа, которым у вас установлен Visual C (или другой
компилятор), поэтому вписать какие-то стандартные пути в Makefile.msvc невозможно.
</p>
<h2>Windows, установка</h2>
<p>
Какая-либо установка под Windows не поддерживается, предполагается что все .DLL будут поставляться вместе с
использующей их программой (которая и сделает установку). Соответственно, при сборке программ, использующих
LibRaw путь до библиотек, DLL и include-файлов должен задаваться вручную.
</p>
<a href=index-rus.html>[вернуться к оглавлению]</a>
<hr>
<address><a href="mailto:info@libraw.org">LibRaw Team</a></address>
<!-- Created: Sun Mar 16 11:53:43 MSK 2008 -->
<!-- hhmts start -->
Last modified: Fri Nov 19 14:49:22 UTC 2010
<!-- hhmts end -->
</body>
</html>
|