Содержание

Библиотека Poco

Общая информация по сборке

poco 1.4.0 openSUSE 11.2 x86_64

Если при сборке возникнут проблемы на стадии ODBC, в файле Data/ODBC/Makefile в строке 12 и в файле Data/ODBC/testsuite/Makefile в строке 12 вместо

ODBCLIBDIR = /usr/lib

поставить

ODBCLIBDIR = /usr/lib64

А лучше так:

configure --prefix=/usr --library-path=/usr/lib64 

Для сборки статических библиотек указывать:

configure --static

Сборка версии 1.4.6p4

Для всех ОС выполнить

for f in configure build/script/*
do dos2unix $f
done

Сборка в MinGW

В файле build/config/MinGW удалить упоминания -mno-cygwin (встречается два раза). Сборка по-умолчанию проходит в режиме static.

Подготовить Makefile:

bash configure --config=MinGW --no-tests --no-samples --omit=Data/MySQL,Data/ODBC --prefix=ПУТЬ_ИНСТАЛЛЯЦИИ

Собрать и инсталлировать:

make
make install

Сборка версии 1.6.0 в MinGW

Перед сборкой рекомендуется просмотреть имеющиеся патчи, например здесь: https://github.com/Alexpux/MINGW-packages/tree/master/mingw-w64-poco

В configure обязательно указать

--cflags=-DPOCO_FORCE_MIN_WINDOWS_OS_SUPPORT

Пример:

./configure --no-tests --no-samples --omit=Data/MySQL,Data/ODBC,NetSSL_OpenSSL,Crypto,CppUnit --cflags=-DPOCO_FORCE_MIN_WINDOWS_OS_SUPPORT --prefix=c:/msys

Сборка через mingw32-cross

В файле build/config/MinGW-CrossEnv

  1. удалить упоминания -mno-cygwin
  2. изменить значение переменной CROSSENV на соответствующее установленному каталогу mingw32, например, i686-w64-mingw32

Подготовить Makefile

mingw32-configure --config=MinGW-CrossEnv --no-tests --no-samples --omit=Data/MySQL,Data/ODBC --prefix=/usr/i686-w64-mingw32/sys-root/mingw/

Собрать

mingw32-make

Note: http://pocoproject.org/docs/99150-GMakeBuildNotes.html

Минимальный вариант сборки версий 1.7.*

Сборка основных компонентов библиотеки, кроме SQL-коннекторов, в статик, debug и non-debug версии:

./configure --static --prefix=/usr/local --no-tests --no-samples --omit=Data/MySQL,Data/ODBC