[asterisk-users] Zaptel / Asterisk on Solaris

RR ranjtech at gmail.com
Sat Dec 4 14:08:52 CST 2010


Hi Bruce,

Thanks again for your generous response, please see a few comments inline

On Sat, Dec 4, 2010 at 6:27 AM, Bruce McAlister <bruce.mcalister at blueface.ie
> wrote:

>  Hi RR,
>
>
>
> Replies inline below
>
>
>
> *From:* asterisk-users-bounces at lists.digium.com [mailto:
> asterisk-users-bounces at lists.digium.com] *On Behalf Of *RR
> *Sent:* 04 December 2010 01:17
>
> *To:* Asterisk Users Mailing List - Non-Commercial Discussion
> *Subject:* Re: [asterisk-users] Zaptel / Asterisk on Solaris
>
>
>
>
>
> On Wed, Dec 1, 2010 at 3:58 PM, RR <ranjtech at gmail.com> wrote:
>
>
>
> Zaptel package isn't installing though ...crashes midway complaining that:
>
>
>
> *"Operating environment requirement not met.**
> This package requires Solaris 7 or better.
> checkinstall script suspends"*
>
>
>
> huh? I'm running 5.11, which according to some rigorous mathematical
> calculations, I concluded IS better than v5.7. Unfortunately, I've been away
> from the development world so long that I can't remember where to go about
> hacking a "package" and extract the scripts etc to change the logic or fix
> whatever is causing it to believe that my OS isn't meeting the min. req.
>
>
>
> Lastly, w.r.t to running it within a VM, yes, I do understand the timing
> problems etc, but this exercise is just to document how to compile
> Asterisk/Zaptel under Solaris 10/11 so when I do get a real Solaris machine,
> I have already sorted out all the issues with installing/compiling etc
>
>
>
> Thanks
>
> \R
>
>
>
> As of this writing, I have recreated my Solaris VM with the latest Solaris
> 10 U9 version and have managed to install and load the zaptel driver. This
> is from the SolarisVoIP but it must be a really old (haven't checked the
> version yet). Now, trying to go crazy here and compile the stock Asterisk
> 1.6.2.14 with it.
>
>
>
> --
>
> I suspected it would have been changes/differences between OpenSolaris and
> Solaris. The packages at SolarisVoIP were built on the standard Solaris OS,
> as you found out J Try to compile version 1.6.2.15-rc1 as I had issues
> with a “timersub” routine on 1.6.2.14 that appears to have been fixed in
> 1.6.2.15-rc1
>
> --
>

Ok, awesome. Will give 1.6.2.15-rc1 a try although in the beginning I did
see compilation errors w.r.t to timersub routine, I don't see them anymore.
I think it was complaining about some library that I then created a soft
link for in a lib directory and that seems to have got fixed. But
neverttheless I'll get the build you recommend.



>    Question for the Digium dev team (if they bother reading emails from
> lowlifes like me): Are their special optimizations/options/conditions/checks
> ALREADY in place within the makefile/configure files that detect Solaris and
> if we want to go really crazy then detect 64-bit Solaris? Do I just fix my
> library paths with the LDFLAGS and just run configure or should I be doing
> something more, modifying makefile, makefile.rules, makefile.opts or the
> configure script itself??
>
>
>
> --
>
> The makefile already has some options specific to Solaris, however, I
> usually edit the makefile to include /usr/sfw which is where the standard
> ssl etc libraries are located on Solaris. The default makefile looks for
> them in /usr/local. If you also want to keep your application in the /opt
> tree then you will need to modify the installation path as well. I seem to
> recall an issue with ncurses or tr or something along those lines which made
> me include /usr/xpg4/bin in the beginning of my PATH so that it found the
> proper tool in one of the scripts. Other than that it should build cleanly
> on Solaris. With regards the 64-bit build, I’ve not tried it yet, but bear
> in mind that the 64-bit libraries for the likes of ogg/vorbis are not there
> by default in Solaris, most of the other standard asterisk library
> requirements are, you should, in theory only have to export <libdir>/64 to
> link in the 64 bit libraries. I’ve not tried to build a 664-bit version yet
> so I’m shooting in the dark here.
>
> --
>
>
>

Ok, right so this is where I'm having serious issues almost every step of
the way. The problem is the stupid paackaging of Solaris and the difficulty
in obtaining packages for them and their dependencies. Like for a week I
struggled with figuring out how I could install/upgrade solaris 8 over the
network to Solaris 10 with JUST a minimal core and the devlopment tools like
gcc, gmake and some libraries etc. then I gave in and decided to just
install the developers Metacluster since compiling/building Asterisk on it
was more important to me right now. Then if I want to stick with purely the
Solaris version of everything, my only option is to manually download
packages I think I need from sunfreeware.com. If I use pkgutil or pkg-get,
then I end up with the CSW packages and that will add to the complexity of
PATHs to my libraries and binaries. Anyway, now that I'm done b**ching about
Solaris (haha) you have hit on the core of my problem. It's the library
paths that are messing me up. So this is how I ran configure:

*LDFLAGS='-R/lib -R/usr/lib -R/opt/lib -R/opt/sfw/lib -R/usr/sfw/lib
-R/usr/local/lib -R/usr/ccs/lib -L/lib -L/usr/lib -L/opt/lib -L/opt/sfw/lib
-L/usr/sfw/lib -L/usr/local/lib -L/usr/ccs/lib' ./configure
--with-curl=/usr/local/bin --prefix=/opt/asterisk*

hoping that it will cover all the library paths that might be out of whack
and where to find the libraries etc. This seems to have worked for the most
part, such that configure ran through fine, and so do 'gmake menuselect'.
But when I now run gmake, I get this error:

*gmake[1]: Leaving directory `/usr/share/src/asterisk-1.6.2.14/menuselect'
ld.so.1: md5sum: fatal: libgcc_s.so.1: open failed: No such file or
directory
/bin/sh: ../build_tools/mkdep: not found
gmake[1]: *** [.depend] Error 1
gmake: *** [utils] Error 2*
running an 'ldd /usr/local/bin/md5sum' confirms that it can't find
libgcc_s.so.1

*libintl.so.8 =>  /lib/libintl.so.8
        libc.so.1 =>     /usr/lib/libc.so.1
        libgcc_s.so.1 =>         (file not found)
        libm.so.2 =>     /lib/libm.so.2
*
however, libgcc_s.so.1 is sitting in /usr/sfw/lib. But no matter what I do,
i.e. modify the LD_LIBRARY_PATH for e.g. I get an error, and I get an error
like

*ld.so.1: md5sum: fatal: relocation error: file /usr/local/bin/md5sum:
symbol libintl_bindtextdomain: referenced symbol not found*
if I were to create a softlink in any of the "common" locations like /lib,
/usr/lib, /usr/local/lib etc.

This is where I am at right now, don't know how to get past it. /usr/sfw/lib
was used in configure and I even added a "LIBS" variable in the Makefile and
even tried the Makefile under the utils directory, but no joy!

Do you or anyone else know how to fix it?

 Wonder why no one responds to emails related to Solaris on Asterisk...even
a search throughout the forum on the Digium website, hardly anything comes
up regarding Solaris :(

>
>
> --
>
> I think historically the dev’s have not had access to a standard Solaris
> box for dev/testing, it has mainly been on OpenSolaris, which as you have
> found out, is, in some cases, different, in the details, to the standard
> Solaris operating system. However, in saying that, they do have access to
> Solaris build environments now, and are making plans to include it in the
> development cycle of the application. Give it time man, and try to help the
> other guys/gals from your own experience, and we should eventually get there
> in the end J
>
> --
>
Lastly, yes, I kinda figured and it is really understandable but I was
merely saying that I appreciate the fact that the developers will focus on
what majority of the user base uses, and I'm not asking them to have a
full-time engineer working to ensure that every build and release is
verified to work and unit-tested and at least sanity tested on Solaris
everytime. All I'm saying is that people in the community like yourself and
I and (I suspect few others) who do take the initiative to work at it (I'm
sorry I'm not a developer by a long shot (the last time I wrote a C program
was in 2001), and even though I or you or someone else will do most of the
work, go out and buy a solaris machine and spend the time to get the
packages right, find the optimal configuration etc., it would be SO awesome
if they would actually jump in and say Ok, let me help you with resolving
the build/compile errors, which should be SO much faster and easier for them
since they know the anatomy of the makefile, configure script and the code
inside-out to know why the linker or the compiler is complaining and how we
can fix it...like it took me forever to find what the "-R" flag does in the
LDFLAGS variable. If they can just tell me what to put where and try it, I
will spend that time trying the suggestions till we get it to work, but
hunting the web and trying to resolve linking/compilation problems in this
product by taking ideas/examples from completely different products who seem
to have had a similar error message pop up is quite inefficient. I'm just
sayin' ;) Hope no ones gets offended with that little rant :D
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20101204/99cddb60/attachment.htm 


More information about the asterisk-users mailing list