Не удалось собрать Firebird-2.5.1.26351 для ОС HP-UX 11i v3
Добавлено: 19 мар 2012, 17:24
При сборке Firebird-2.5.1.26351 для ОС HP-UX 11i v3(Itanium) была получена следующая ошибка:
...
gmake[3]: Leaving directory `/home/kpm/rev/SRC/Firebird-2.5.1.26351-0/gen'
rm -f empty.fdb
../gen/firebird/bin/create_db empty.fdb
Pid 8506 received a SIGSEGV for stack growth failure.
Possible causes: insufficient memory or swap space,
or stack size exceeded maxrsessiz
or stack size limit is set too small.
gmake[2]: *** [empty.fdb] Segmentation fault (core dumped)
gmake[2]: Leaving directory `/home/kpm/rev/SRC/Firebird-2.5.1.26351-0/gen'
...
В соответствии с документацией Firebird-2.5 поддерживает ОС HP-UX 11i v3 (Itanium) (doc/README.build.posix.html).
Кто-нибудь пробовал собирать Firebird для ОС HP-UX 11i v3 (Itanium)? Из-за чего могла возникнуть указанная выше проблема при запуске create_db?
Заранее спасибо,
Елена
Дополнительная информация:
Исходные тексты Firebird-2.5.1.26351-0.tar взяты с сайта http://www.firebirdsql.org/
Для сборки дополнительно на HP-UX 11i v3 были установлены различные GNU пакеты (gmake, autoconf ,m4.. )
Кроме того, были установлены:
- HP-UX Atomic APIs (AtomicLib B11.31.0803.01 Library for Atomic APIs);
- editline (2.9);
- icu 4.8.1.1.
Сборка осуществлялась следующим образом:
> export CC=cc
> export CXX=aCC
> export CFLAGS="+DD64"
> export CXXFLAGS="+DD64 -I/usr/local/include"
> export SED=/bin/sed
> export LDFLAGS=-L/usr/local/lib
> export SHLIB_PATH=/usr/local/lib
> export CPPFLAGS=-I/usr/local/include
> ./autogen.sh --with-system-editline=yes --with-system-icu --enable-debug
Замечание: пришлось подправить autogen.sh, т.к. неправильно определялось местонахождение automake (1.11)
> gmake
Немного поэкспериментировали с переменными ядра: maxrsessiz*, но не помогло. При изменение данного параметра только изменяется точка, в которой происходит развал:
Анализ core:
1) maxrsessiz_64bit=8388608
#0 Firebird::MemoryPool::getContextPool ()
at ../src/common/classes/alloc.cpp:299
299 {
2) maxrsessiz_64bit=33554432
#0 Firebird::StringBase<Firebird::PathNameComparator>::StringBase (this=0x81)
at ../src/common/../common/../common/classes/fb_string.h:609
609 inline StringBase<Comparator>() : AbstractString() {}
3) maxrsessiz_64bit=67198864
#0 0x40000000005729e0:0 in gds__log (
text=0xc000000000000917 <Address 0xc000000000000917 out of bounds>)
at ../src/jrd/gds.cpp:1163
1163 {
>/usr/sbin/kctune| grep ssiz
maxrsessiz 8388608 Default
maxrsessiz_64bit 67198864 67198864
maxssiz 8388608 Default Immed
maxssiz_64bit 268435456 Default Immed
pa_maxssiz_32bit 83648512 Default Immed
pa_maxssiz_64bit 536870912 Default Immed
>/usr/sbin/swapinfo -tam
Mb Mb Mb PCT START/ Mb
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 8000 0 8000 0% 0 - 1 /dev/vg00/lvol2
reserve - 466 -466
memory 3789 1553 2236 41%
total 11789 2019 9770 17% - 0 -
...
gmake[3]: Leaving directory `/home/kpm/rev/SRC/Firebird-2.5.1.26351-0/gen'
rm -f empty.fdb
../gen/firebird/bin/create_db empty.fdb
Pid 8506 received a SIGSEGV for stack growth failure.
Possible causes: insufficient memory or swap space,
or stack size exceeded maxrsessiz
or stack size limit is set too small.
gmake[2]: *** [empty.fdb] Segmentation fault (core dumped)
gmake[2]: Leaving directory `/home/kpm/rev/SRC/Firebird-2.5.1.26351-0/gen'
...
В соответствии с документацией Firebird-2.5 поддерживает ОС HP-UX 11i v3 (Itanium) (doc/README.build.posix.html).
Кто-нибудь пробовал собирать Firebird для ОС HP-UX 11i v3 (Itanium)? Из-за чего могла возникнуть указанная выше проблема при запуске create_db?
Заранее спасибо,
Елена
Дополнительная информация:
Исходные тексты Firebird-2.5.1.26351-0.tar взяты с сайта http://www.firebirdsql.org/
Для сборки дополнительно на HP-UX 11i v3 были установлены различные GNU пакеты (gmake, autoconf ,m4.. )
Кроме того, были установлены:
- HP-UX Atomic APIs (AtomicLib B11.31.0803.01 Library for Atomic APIs);
- editline (2.9);
- icu 4.8.1.1.
Сборка осуществлялась следующим образом:
> export CC=cc
> export CXX=aCC
> export CFLAGS="+DD64"
> export CXXFLAGS="+DD64 -I/usr/local/include"
> export SED=/bin/sed
> export LDFLAGS=-L/usr/local/lib
> export SHLIB_PATH=/usr/local/lib
> export CPPFLAGS=-I/usr/local/include
> ./autogen.sh --with-system-editline=yes --with-system-icu --enable-debug
Замечание: пришлось подправить autogen.sh, т.к. неправильно определялось местонахождение automake (1.11)
> gmake
Немного поэкспериментировали с переменными ядра: maxrsessiz*, но не помогло. При изменение данного параметра только изменяется точка, в которой происходит развал:
Анализ core:
1) maxrsessiz_64bit=8388608
#0 Firebird::MemoryPool::getContextPool ()
at ../src/common/classes/alloc.cpp:299
299 {
2) maxrsessiz_64bit=33554432
#0 Firebird::StringBase<Firebird::PathNameComparator>::StringBase (this=0x81)
at ../src/common/../common/../common/classes/fb_string.h:609
609 inline StringBase<Comparator>() : AbstractString() {}
3) maxrsessiz_64bit=67198864
#0 0x40000000005729e0:0 in gds__log (
text=0xc000000000000917 <Address 0xc000000000000917 out of bounds>)
at ../src/jrd/gds.cpp:1163
1163 {
>/usr/sbin/kctune| grep ssiz
maxrsessiz 8388608 Default
maxrsessiz_64bit 67198864 67198864
maxssiz 8388608 Default Immed
maxssiz_64bit 268435456 Default Immed
pa_maxssiz_32bit 83648512 Default Immed
pa_maxssiz_64bit 536870912 Default Immed
>/usr/sbin/swapinfo -tam
Mb Mb Mb PCT START/ Mb
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 8000 0 8000 0% 0 - 1 /dev/vg00/lvol2
reserve - 466 -466
memory 3789 1553 2236 41%
total 11789 2019 9770 17% - 0 -