Para HP-UX Versão 11.x nós recomendamos o MySQL Versão 3.23.15 ou posterior.
Por causa de alguns bugs críticos nas bibliotecas padrão do HP-UX, você deve instalar as seguintes correções antes de tentar executar o MySQL no HP-UX 11.0:
PHKL_22840 Streams cumulative PHNE_22397 ARPA cumulative
Isto irá resolver um problema que tem como retorno
EWOLDBLOCK
de recv()
e
EBADF
de accept()
em
aplicações threads.
Se você estiver usando gcc
2.95.1 em um
sistema HP-UX 11.x sem correções, você obterá o erro:
In file included from /usr/include/unistd.h:11, from ../include/global.h:125, from mysql_priv.h:15, from item.cc:19: /usr/include/sys/unistd.h:184: declaration of C function ... /usr/include/sys/pthread.h:440: previous declaration ... In file included from item.h:306, from mysql_priv.h:158, from item.cc:19:
O problema é que o HP-UX não define consistentemente a
pthreads_atfork()
. Ela tem protótipos
coflitantes em
/usr/include/sys/unistd.h
:184 e
/usr/include/sys/pthread.h
:440 (detalhes
abaixo).
Uma solução é copiar
/usr/include/sys/unistd.h
em
mysql/include
e editar
unistd.h
alterando-o para coincidir com a
definição em pthread.h
. Aqui está o
diff:
183,184c183,184 < extern int pthread_atfork(void (*prepare)(), void (*parent)(), < void (*child)()); --- > extern int pthread_atfork(void (*prepare)(void), void (*parent)(void), > void (*child)(void));
Depois disto, a seguinte linha configure deve funcionar:
CFLAGS="-fomit-frame-pointer -O3 -fpic" CXX=gcc \ CXXFLAGS="-felide-constructors -fno-exceptions -fno-rtti -O3" \ ./configure --prefix=/usr/local/mysql --disable-shared
Segue algumas inforamações que um usuário do HP-UX Versão 11.x nos enviou sobre compilação do MySQL com o compilador HP-UX:
CC=cc CXX=aCC CFLAGS=+DD64 CXXFLAGS=+DD64 ./configure --with-extra-character-set=complex
Você pode ignorar qualquer erro do tipo:
aCC: warning 901: unknown option: `-3': use +help for online documentation
Se você obter o seguinte erro do configure
checking for cc option to accept ANSI C... no configure: error: MySQL requires a ANSI C compiler (and a C++ compiler). Try gcc. See the Installation chapter in the Reference Manual.
Confira se você não tem o caminho para o compilador K&R antes do caminho para o compilador C e C++ do HP-UX.
Outra razão para não estar compilando é você não definir
o parâmetro +DD64
acima.
Outra possibilidade para o HP-UX 11 é usar o binário MySQL para HP-UX 10.20. Recebemos relatos de alguns usuários de que esses binários funcionam bem no HP-UX 11.00. Se você encontrar problemas, verifique o nível do pacth de seu HP-UX.
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.