Frank Sainsbury - 2009-03-18

I had trouble as gcc gave errors like
Text relocation remains                         referenced
    against symbol                  offset      in file
operator new(unsigned int)          0x160       /var/tmp//ccPQ6SaO.o
operator delete(void*)              0x20c       /var/tmp//ccPQ6SaO.o
<unknown>                           0x44        /var/tmp//ccPQ6SaO.o
<unknown>                           0x48        /var/tmp//ccPQ6SaO.o
<unknown>                           0x80        /var/tmp//ccPQ6SaO.o
<unknown>                           0x84        /var/tmp//ccPQ6SaO.o
<unknown>                           0xd8        /var/tmp//ccPQ6SaO.o
<unknown>                           0xdc        /var/tmp//ccPQ6SaO.o
<unknown>                           0x530       /var/tmp//ccPQ6SaO.o
<unknown>                           0x534       /var/tmp//ccPQ6SaO.o
<unknown>                           0x648       /var/tmp//ccPQ6SaO.o
<unknown>                           0x64c       /var/tmp//ccPQ6SaO.o
median_clear                        0x240       /var/tmp//ccPQ6SaO.o
compare_doubles(void const*, void const*)0x598          /var/tmp//ccPQ6SaO.o
compare_doubles(void const*, void const*)0x59c          /var/tmp//ccPQ6SaO.o
median_add                          0x258       /var/tmp//ccPQ6SaO.o
qsort                               0x5a0       /var/tmp//ccPQ6SaO.o
realloc                             0x384       /var/tmp//ccPQ6SaO.o
strcpy                              0x4c        /var/tmp//ccPQ6SaO.o
strcpy                              0x88        /var/tmp//ccPQ6SaO.o
strcpy                              0xe0        /var/tmp//ccPQ6SaO.o
malloc                              0x2e8       /var/tmp//ccPQ6SaO.o
free                                0x1f4       /var/tmp//ccPQ6SaO.o
free                                0x2d0       /var/tmp//ccPQ6SaO.o
ld: fatal: relocations remain against allocatable but non-writable sections

or __gxx_personality_v0: reference failed  from mysql.

issue with gcc not using g++ on cc file on solaris: fix:

#!/bin/sh
#Changed udf_confidence_upper.cc to relect true name higher.
#pkg-get -i mysql51
ls -C1 u*.cc  | sed -e 's/.cc//' | awk '{print "g++ -x c++  -fPIC -Wall -I /opt/csw/mysql5/include   -I /usr/local/include  -o " $1".o  -c "$1".cc"}' |sh
ls -C1 u*.cc  | sed -e 's/.cc//' | awk '{print "g++   -shared  -W1,-soname,"$1".so -o"$1".so "$1".o"}' |sh

cp *.so /opt/csw/mysql5/lib/mysql/       
ldd *.so
/opt/csw/mysql5/bin/mysql -u root -p mysql < fgrep -h CREA udf*.cc