Google
  Web www.spinics.net

[Openh323-devel] Please Help: PWLib, OPAL, T38Modem compilation on Solaris 10 x86

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


Hi All,

I'm having some difficulty building PWLib, OPAL and T38modem on Solaris
10 x86.

Background:

My end goal is to build Hylafax for use with T38Modem connecting to a
Cisco AS5400. I would like to use the SIP protocol for the
communications between T38Modem and the Cisco. Looking through this
mailing list, I was able to deduce that I would need the CVS editions of
PWLIB, OPAL and T38Modem to get the functionality I required.

OS and Build Environment:

Solaris 10 Update 3 (11/06) x86

/usr/sfw/bin/gcc --version
gcc (GCC) 3.4.3 (csl-sol210-3_4-branch+sol_rpath)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

/usr/sfw/bin/g++ --version
g++ (GCC) 3.4.3 (csl-sol210-3_4-branch+sol_rpath)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

uname -a
SunOS astdev01 5.10 Generic_125101-10 i86pc i386 i86pc

I performed the following steps to get to where I am now:

[1] Downloaded the CVS editions of PWLib, OPAL, T38Modem:

cvs -z9 -d
:pserver:anonymous@xxxxxxxxxxxxxxxxxxxxxxxxxxxx:/cvsroot/openh323 co
ptlib_unix
cvs -z9 -d
:pserver:anonymous@xxxxxxxxxxxxxxxxxxxxxxxxxxxx:/cvsroot/openh323 co opal
cvs -z9 -d
:pserver:anonymous@xxxxxxxxxxxxxxxxxxxxxxxxxxxx:/cvsroot/openh323 co
t38modem

[2] Setup the environment and build PWLib

export PATH=/usr/bin:/usr/sbin:/usr/sfw/bin:/usr/ccs/bin
export CC='/usr/sfw/bin/gcc'
export CFLAGS='-I/usr/sfw/include'
export CXX='/usr/sfw/bin/g++'
export CXXFLAGS='-I/usr/sfw/include'
export LDFLAGS='-L/lib -L/usr/lib -L/usr/sfw/lib -R/lib -R/usr/lib
-R/usr/sfw/lib'

export PWLIBDIR=$HOME/pwlib

cd $PWLIBDIR
gmake clean
./configure --disable-video
gmake

This build was successful

[2] Setup the environment and build OPAL

export PATH=/usr/bin:/usr/sbin:/usr/sfw/bin:/usr/ccs/bin
export CC='/usr/sfw/bin/gcc'
export CFLAGS='-I/usr/sfw/include'
export CXX='/usr/sfw/bin/g++'
export CXXFLAGS='-I/usr/sfw/include'
export LDFLAGS='-L/lib -L/usr/lib -L/usr/sfw/lib -R/lib -R/usr/lib
-R/usr/sfw/lib'

export PWLIBDIR=$HOME/pwlib
export OPALLIBDIR=$HOME/opal
export LD_LIBRARY_PATH=/lib:/usr/lib:/usr/sfw/lib:${PWLIBDIR}/lib

cd $OPALLIBDIR
gmake clean
./configure --disable-video
gmake

Here I had some problems, when it came to building the audio plugins,
the build failed with the following error:

gmake[2]: Entering directory `/export/home/vzhsxn/opal/plugins'
gmake[3]: Entering directory
`/export/home/vzhsxn/opal/plugins/audio/GSM0610'
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c
gsm06_10_codec.c -o obj/gsm06_10_codec.o
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c
./src/gsm_create.c -o obj/gsm_create.o
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c
./src/gsm_destroy.c -o obj/gsm_destroy.o
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c
./src/gsm_decode.c -o obj/gsm_decode.o
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c
./src/gsm_encode.c -o obj/gsm_encode.o
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c
./src/gsm_option.c -o obj/gsm_option.o
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c ./src/code.c -o
obj/code.o
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c ./src/decode.c
-o obj/decode.o
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c ./src/add.c -o
obj/add.o
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c ./src/gsm_lpc.c
-o obj/gsm_lpc.o
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c ./src/rpe.c -o
obj/rpe.o
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c
./src/preprocess.c -o obj/preprocess.o
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c
./src/long_term.c -o obj/long_term.o
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c
./src/short_term.c -o obj/short_term.o
/usr/sfw/bin/gcc -I../../../include -I./inc -DWAV49
-DNeedFunctionPrototypes=1  -fPIC  -I/usr/sfw/include -c ./src/table.c
-o obj/table.o
/usr/sfw/bin/gcc -Bdynamic -G -h -o gsm0610_audio_pwplugin.so
obj/gsm06_10_codec.o obj/gsm_create.o obj/gsm_destroy.o obj/gsm_decode.o
obj/gsm_encode.o obj/gsm_option.o obj/code.o obj/decode.o obj/add.o
obj/gsm_lpc.o obj/rpe.o obj/preprocess.o obj/long_term.o
obj/short_term.o obj/table.o
gcc: gsm0610_audio_pwplugin.so: No such file or directory
gmake[3]: *** [gsm0610_audio_pwplugin.so] Error 1
gmake[3]: Leaving directory `/export/home/vzhsxn/opal/plugins/audio/GSM0610'
gmake[2]: *** [opt] Error 2
gmake[2]: Leaving directory `/export/home/vzhsxn/opal/plugins'
gmake[1]: *** [opt] Error 2
gmake[1]: Leaving directory `/export/home/vzhsxn/opal'
gmake: *** [optshared] Error 2

To fix this I had to edit $OPALLIBDIR/plugins/configure and change the
following section of code (NOTE: the "solaris*) LDSO=" line) from:

case "$target_os" in
        solaris*) LDSO="-Bdynamic -G -h" ;;
        darwin*)
          CFLAGS="-fno-common -dynamic"
          LDSO="-dynamiclib -multiply_defined suppress"
          STDCCFLAGS="$STDCCFLAGS -D__MACOSX__"
          case "$target_cpu" in
           x86 | i686 | i586 | i486 | i386 ) STDCCFLAGS="${STDCCFLAGS}
-m486" ;;
          esac
          PLUGINEXT=dylib
        ;;
        *)LDSO='-shared -Wl,-soname,$(SONAME)';;
esac

to

case "$target_os" in
        solaris*) LDSO="-Bdynamic -G" ;;
        darwin*)
          CFLAGS="-fno-common -dynamic"
          LDSO="-dynamiclib -multiply_defined suppress"
          STDCCFLAGS="$STDCCFLAGS -D__MACOSX__"
          case "$target_cpu" in
           x86 | i686 | i586 | i486 | i386 ) STDCCFLAGS="${STDCCFLAGS}
-m486" ;;
          esac
          PLUGINEXT=dylib
        ;;
        *)LDSO='-shared -Wl,-soname,$(SONAME)';;
esac

After this change, it manages to build the audio codecs successfully,
however, now it is trying to build the video codecs, which i have
specifically requested to *not* build (--disable-video), and it is
fileing with the following error:

gmake[3]: Entering directory
`/export/home/vzhsxn/opal/plugins/video/H.261-vic'
/usr/sfw/bin/g++ -I../../../include -I../common -fPIC
-I/usr/sfw/include -c h261vic.cxx -o obj/h261vic.o
/usr/sfw/bin/g++ -I../../../include -I../common -fPIC
-I/usr/sfw/include -c ../common/trace.cxx -o obj/trace.o
../common/trace.cxx: In static member function `static std::ostream&
Trace::Start(const char*, int)':
../common/trace.cxx:55: error: `basename' undeclared (first use this
function)
../common/trace.cxx:55: error: (Each undeclared identifier is reported
only once for each function it appears in.)
gmake[3]: *** [obj/trace.o] Error 1
gmake[3]: Leaving directory
`/export/home/vzhsxn/opal/plugins/video/H.261-vic'
gmake[2]: *** [opt] Error 2
gmake[2]: Leaving directory `/export/home/vzhsxn/opal/plugins'
gmake[1]: *** [opt] Error 2
gmake[1]: Leaving directory `/export/home/vzhsxn/opal'
gmake: *** [optshared] Error 2

I'm not sure what, if anything, to change to get this working properly.

Any suggestions/comments/help would be greatly appreciated.

Thanks
Bruce



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Openh323-devel mailing list
Openh323-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/openh323-devel

[Home]     [Open H.323]     [Gnu Gatekeeper]     [Asterisk PBX]     [Fedora Linux]     [Gimp]     [Yosemite News]     [Yosemite Photos]     [Yosemite Campsites]     [ISDN Cause Codes]


RSS
Powered by Linux