I am trying to install Kamailio 3.1.0 on Solaris 10 that is a sparc
machine (v120) and is running a 64bit OS. When I originally performed
the compile utilizing the instructions from the website, I was getting
warnings about using 32 bit headers. I was able to compile and install
successfully, but when I started Kamailio, loading of modules were
failing due to "not found" error. The warning messages:
"atomic/atomic_sparc.h:41:2: warning: #warning "sparc32 atomic
operations support not tested""
I thought was because the target architecture specified sparc and not
sparc64, so I tried specified the target architecture as listed below
which got rid of the warning messages but then I got ELFCLASS32 error
messages. What is the proper way to create a 64bit version of Kamailio
on a sparc Solaris 10. It seems like the target architecure is not being
configured properly and that may be causing other problems. I have
included output from different commands about the environment and the
commands that I entered to compile Kamailio.
# make FLAVOUR=kamailio cfg
target architecture <sparc>, host architecture <sparc64>
# isainfo -n
sparcv9
# uname -p
sparc
# uname -m
sun4u
# isainfo -v
64-bit sparcv9 applications
vis
32-bit sparc applications
vis v8plus div32 mul32
# isainfo -b
64
Here is what I entered to try and force the building of a 64 bit version
and a sample error that I was getting.
make FLAVOUR=kamailio prefix=/usr/local/kamailio-3.1 CPU=ultrasparc
ARCH=sparc64 cfg
LD (gcc) [M lcr.so] lcr.so
ld: fatal: file /usr/local/lib/libpcre.so: wrong ELF class: ELFCLASS32
ld: fatal: File processing errors. No output written to lcr.so
collect2: ld returned 1 exit status
make[1]: *** [lcr.so] Error 1
make: *** [modules] Error 1
LD_LIBRARY_PATH=/lib/sparcv9:/usr/lib/sparcv9:/usr/sfw/lib/sparcv9:/usr/local/postgres/9.0-pgdg/lib/64
LD_RUN_PATH=/lib/sparcv9:/usr/lib/sparcv9:/usr/sfw/lib/sparcv9:/usr/local/postgres/9.0-pgdg/lib/64
PATH=/opt/csw/bin:/usr/sfw/bin:/usr/local/bin:/usr/local/postgres/9.0-pgdg/bin:/usr/sbin:/usr/bin:/usr/ccs/bin:
# find . -name libpcre.so -print
./usr/local/lib/libpcre.so
Thanks