:: DEVELOPER ZONE
Se você está usando o egcs 1.1.2 no Digital Unix, você atualizar par o gcc 2.95.2, já que o egcs no DEC tem vários erros graves !
Quando compilando programas com threads no Digital Unix, a documentação
recomenda usar a opção -pthread para cc e cxx e as
bibliotecas -lmach -lexc (em adição para -lpthread). Você
deve executar o configure parecido com isto:
CC="cc -pthread" CXX="cxx -pthread -O" \ ./configure --with-named-thread-libs="-lpthread -lmach -lexc -lc"
Quando compilando o mysqld, você deve ver alguns avisos como estes:
mysqld.cc: In function void handle_connections()': mysqld.cc:626: passing long unsigned int *' as argument 3 of accept(int,sockadddr *, int *)'
Você pode ignorar estes altertas com segurança. Eles ocorrem porque o
configure só pode detectar erros e não alertas.
Se você inicia o servidor diretamente da linha de comando, você pode ter
problemas com a finalização do servidor ao sair (log out). (Quando você sai,
seu processo superior recebe um sinal SIGHUP.) Se isto acontecer, tente
iniciar o servidor desta forma:
shell> nohup mysqld [options] &
nohup faz com que o comando que o segue ignore qualquer sinal SIGHUP
enviado pelo terminal. De forma alternativa, inicie o servidor executando
mysqld_safe, o qual invoca o mysqld usando nohup por você.
See Secção 4.8.2, “mysqld-safe, o wrapper do mysqld”.
Se você tiver problemas quando compilar mysys/get_opt.c, apenas remova a linha #define _NO_PROTO do inicio do arquivo!
Se você estiver utilizando o compilador CC da Compac, a seguinte linha de configuração deverá funcionar:
CC="cc -pthread" CFLAGS="-O4 -ansi_alias -ansi_args -fast -inline speed all -arch host" CXX="cxx -pthread" CXXFLAGS="-O4 -ansi_alias -ansi_args -fast -inline speed all -arch host \ -noexceptions -nortti" export CC CFLAGS CXX CXXFLAGS ./configure \ --prefix=/usr/local/mysql \ --with-low-memory \ --enable-large-files \ --enable-shared=yes \ --with-named-thread-libs="-lpthread -lmach -lexc -lc" gnumake
Se você tiver problemas com a libtool, ao compilar com bibliotecas compartilhadas
como no exemplo acima, quando estiver ligando ao mysqld, você deve
conseguir contornar este problema usando:
cd mysql /bin/sh ../libtool --mode=link cxx -pthread -O3 -DDBUG_OFF \ -O4 -ansi_alias -ansi_args -fast -inline speed \ -speculate all \ -arch host -DUNDEF_HAVE_GETHOSTBYNAME_R \ -o mysql mysql.o readline.o sql_string.o completion_hash.o \ ../readline/libreadline.a -lcurses \ ../libmysql/.libs/libmysqlclient.so -lm cd .. gnumake gnumake install scripts/mysql_install_db
© 1995-2005 MySQL AB. All rights reserved.
