[tlbuild] Oracle Solaris 11.3 x86 and asymptote: success!

Mojca Miklavec mojca.miklavec.lists at gmail.com
Fri May 6 19:45:34 CEST 2016


Dear Nelson,

On 6 May 2016 at 18:41, Nelson H. F. Beebe wrote:
>
> I attempted to build asympote with those compilers,

You were doing the builds at nearly the same time as I committed asy to TL.

You can check my notes at
    http://tug.org/svn/texlive/trunk/Build/source/doc/README.solaris?view=markup&pathrev=40919#l119
and suggest improvements.


> but got a
> build failure.  I did a "make distclean" in the asympote directory and
> restarted with CC and CXX pointing to the 4.9.2 compilers in the
> /opt/csw/bin tree, and that too failed.

I was fighting with different compilers without too much success. I
could perhaps fix one problem, but then it failed somewhere else. I
read that the native compiler by Solaris now supports C++11, but I
gave up at some point. The code is not really C++11, but I failed to
get the system compiler working on version 10 (and version 11 couldn't
be used to build portable binaries anyway).

> I then wondered whether more of those /opt/csw packages could be
> eliminated by a change in LDFLAGS, adding system directories
> ahead of CSW ones.  This setting
>
>         LDFLAGS=-R/lib -L/lib                   \
>                 -R/usr/lib -L/usr/lib           \
>                 -R/opt/csw/lib -L/opt/csw/lib   \
>                 -static-libstdc++'
>
> led to a new asy executable with only these unwanted references:
>
>         % ldd asy | grep /opt | sort
>                 libGL.so.1 =>    /opt/csw/lib/i386/libGL.so.1
>                 libglut.so.3 =>  /opt/csw/lib/libglut.so.3
>
> Notice the addition of the -static-libstdc++ flag, a g++ flag that I
> only recently discovered.

I did the last step with static linking against libstdc++ manually,
but I'll try your proposal because copy-pasting the build command
manually is more likely to lead to human error.

> I made a final build of asymptote as in the last example, but adding
> --disable-gl to the configure command line.  That produces an asy
> executable with ZERO references to the /opt/csw tree.

This was my observation as well. John Bowman pointed out that
asymptote is way more limited without support for OpenGL (and
suggested not to do it), but I have no idea how to get a binary that
would work everywhere without dependency on OpenCSW. And if users
already have OpenCSW installed ... they might just as well install
asymptote from OpenCSW. We only need to try to get the package updated
there.

> I also plan to try a 64-bit build of TeX Live 2016 on that system.

Check out my notes on the link above. In particular you might need this one:
    https://github.com/vectorgraphics/asymptote/issues/19
I could try to prepare a pull request, but I need to investigate which
other flags are needed.

Mojca


More information about the tlbuild mailing list