MySQL-client-community.x86_64 5.1.50-1.rhel5 installed
MySQL-devel-community.x86_64 5.1.50-1.rhel5 installed
MySQL-server-community.x86_64 5.1.50-1.rhel5 installed
MySQL-shared-compat.x86_64 5.1.50-1.rhel5 installed
Y como super-smack no sabe hacerca de /usr/lib64 tenemos que indicarle, para esto ya tenemos el codigo y estamos en la carpeta de super-smack1.3:
./configure --with-mysql --with-mysql-lib=/usr/lib64/
Building with the following options:
MySQL Support..................... yes
PostgreSQL Support................ no
Oracle Support.................... no
If this is not what you intended, please re-run configure.
Thanks for using super-smack!
Esto sale despues de un chorizo mas grande. Tambien debemos tener libtool y sus allegados, texinfo.
Bien una vez ejecutado configure, vamos a ejecutar make, pero debemos hacer lo siguiente para arquitecturas de 64bits, abrir el archivo src/query.cc e irse a la linea aprox. 188 y modificar esa parte del codigo como sigue:
void Query_report::fd_send(int fd)
{
map
type_reports.begin();
char buf[MAX_REPORT_LEN];
int len = 0, num_recs = 0;
char* p = (char*)buf + 1, *p_end = (char*)buf+sizeof(buf);
while(i != type_reports.end())
{
string s((*i).first);
int str_len = (*i).first.length();
if((long)p + str_len + 3 *sizeof(int) < (long)p_end )
{
*p++ = (char) str_len;
const char* q_type_name = s.c_str();
memcpy(p,q_type_name , str_len);
p += str_len;
memcpy(p, &((*i).second->num_queries), sizeof(int));
p += sizeof(int);
memcpy(p, &((*i).second->max_time), sizeof(int));
p += sizeof(int);
memcpy(p, &((*i).second->min_time), sizeof(int));
p += sizeof(int);
i++;
num_recs++;
}
else
die(0, "report buffer overflow -- too many query types");
}
len = (long)p - (long)buf;
Revisen bien que necesitan modificar.
Ahora si lo instalamos:
[root@mbx-mysqlmaster super-smack-1.3]# make install
Making install in src
make[1]: Entering directory `/usr/app/bench/super-smack-1.3/src'
make[2]: Entering directory `/usr/app/bench/super-smack-1.3/src'
/bin/sh ../mkinstalldirs /usr/local/bin
/usr/bin/install -c super-smack /usr/local/bin/super-smack
/usr/bin/install -c gen-data /usr/local/bin/gen-data
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/usr/app/bench/super-smack-1.3/src'
make[1]: Leaving directory `/usr/app/bench/super-smack-1.3/src'
make[1]: Entering directory `/usr/app/bench/super-smack-1.3'
make[2]: Entering directory `/usr/app/bench/super-smack-1.3'
make[2]: Nothing to be done for `install-exec-am'.
/bin/sh ./mkinstalldirs /usr/share/smacks /var/smack-data
mkdir /usr/share/smacks
mkdir /var/smack-data
cp -rp ./smacks/* /usr/share/smacks
make[2]: Leaving directory `/usr/app/bench/super-smack-1.3'
make[1]: Leaving directory `/usr/app/bench/super-smack-1.3'
Ya solo necesito ver como hacerle para no se vaya a /usr/local/bin. Animo!!!
1 comentario:
Hola, Pedro Moreno, mi nombre es David y tengo que instalar en un Centos de 64 el super smach 1.3. Me preguntaba si podiras ayudarme con esta tarea ya que no se por donde comenzar.
Publicar un comentario