Mark Wright wrote: > Hello Morten, > > That's neat that someone else is using tntnet on > Solaris. I use cxxtools, tntnet and tntdb on > Solaris, they do work with Sun Studio 11 and 12 > (without the -stlport4 option) after replacing > the old broken libtool with the current release. > > The libtool supplied with cxxtools 1.4.4 is old > and does not work with Sun Studio 11 or 12 on > Solaris. I will try building the latest cxxtools > and tntnet on Solaris. The first thing that is > required to build cxxtools on Solaris is to replace > the old libtool with the latest libtool release, > something like: > > goanna% which libtool > /usr/bin/libtool > goanna% cd ../../ts/tntnet/cxxtools-1.4.4
> goanna% autoreconf --install --force > /usr/share/aclocal/libfame.m4:6: warning: underquoted > definition of AM_PATH_LIBFAME > /usr/share/aclocal/libfame.m4:6: run info > '(automake)Extending aclocal' > /usr/share/aclocal/libfame.m4:6: or see > http://sources.redhat.com/automake/automake.html#Extending-aclocal > acinclude.m4:6397: the serial number must appear before any > macro definition > /usr/share/aclocal/libfame.m4:6: warning: underquoted > definition of AM_PATH_LIBFAME > /usr/share/aclocal/libfame.m4:6: run info > '(automake)Extending aclocal' > /usr/share/aclocal/libfame.m4:6: or see > http://sources.redhat.com/automake/automake.html#Extending-aclocal > You should update your `aclocal.m4' by running aclocal. > You should update your `aclocal.m4' by running aclocal. > acinclude.m4:6397: the serial number must appear before any > macro definition > /usr/share/aclocal/libfame.m4:6: warning: underquoted > definition of AM_PATH_LIBFAME > /usr/share/aclocal/libfame.m4:6: run info > '(automake)Extending aclocal' > /usr/share/aclocal/libfame.m4:6: or see > http://sources.redhat.com/automake/automake.html#Extending-aclocal > You should update your `aclocal.m4' by running aclocal. > /usr/share/aclocal/libfame.m4:6: warning: underquoted > definition of AM_PATH_LIBFAME > /usr/share/aclocal/libfame.m4:6: run info > '(automake)Extending aclocal' > /usr/share/aclocal/libfame.m4:6: or see > http://sources.redhat.com/automake/automake.html#Extending-aclocal > goanna% which autoreconf > /opt/jdsbld/bin/autoreconf > goanna% autoreconf --version > autoreconf (GNU Autoconf) 2.61 > Copyright (C) 2006 Free Software Foundation, Inc. > This is free software. You may redistribute copies of it > under the terms of > the GNU General Public License > <http://www.gnu.org/licenses/gpl.html>. > There is NO WARRANTY, to the extent permitted by law. > > Written by David J. MacKenzie and Akim Demaille. > goanna% which libtool > /usr/bin/libtool > goanna% libtool --version > ltmain.sh (GNU libtool) 1.5.24 (1.1220.2.455 2007/06/24 > 02:13:29) > > Copyright (C) 2007 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. > goanna% > > To build with the Sun Studio 12 -stlport4 option requires > a few header files to be included in some of the cxxtools > source files, I will send some diffs for that soon. > > I've never built it with gcc on Solaris. > > The current gcc release for Solaris is included in the > SFE project: > > http://pkgbuild.sourceforge.net/spec-files-extra/ > > It builds with Sun Studio 12 on Solaris 10 and > Solaris Express. Something like: > > % svn co > https://pkgbuild.svn.sourceforge.net/svnroot/pkgbuild/spec-files-extra/trunk > spec-files-extra > % cd spec-files-extra > % pkgtool build --download SFEgcc.spec > > Then to use it requires passing -R/usr/gnu/lib > when linking programs. > > Regards, Mark > Hi Mark, Hi Tommi, Hi all list readers. I installed automake autoconf and whatever I could find useful from here http://www.blastwave.org/packages.php and here http://www.sun.com/software/solaris/freeware/ Installation of <CSWautomake> was successful. bash-3.00$ autoreconf --install --force /opt/csw/share/aclocal/libmcrypt.m4:17: warning: underquoted definition of AM_PATH_LIBMCRYPT run info '(automake)Extending aclocal' or see http://sources.redhat.com/automake/automake.html#Extending-aclocal /opt/csw/share/aclocal/gtk.m4:7: warning: underquoted definition of AM_PATH_GTK /opt/csw/share/aclocal/glib.m4:8: warning: underquoted definition of AM_PATH_GLIB /opt/csw/share/aclocal/libmcrypt.m4:17: warning: underquoted definition of AM_PATH_LIBMCRYPT run info '(automake)Extending aclocal' or see http://sources.redhat.com/automake/automake.html#Extending-aclocal /opt/csw/share/aclocal/gtk.m4:7: warning: underquoted definition of AM_PATH_GTK /opt/csw/share/aclocal/glib.m4:8: warning: underquoted definition of AM_PATH_GLIB You should update your `aclocal.m4' by running aclocal. You should update your `aclocal.m4' by running aclocal. /opt/csw/share/aclocal/libmcrypt.m4:17: warning: underquoted definition of AM_PATH_LIBMCRYPT run info '(automake)Extending aclocal' or see http://sources.redhat.com/automake/automake.html#Extending-aclocal /opt/csw/share/aclocal/gtk.m4:7: warning: underquoted definition of AM_PATH_GTK /opt/csw/share/aclocal/glib.m4:8: warning: underquoted definition of AM_PATH_GLIB /opt/csw/share/aclocal/libmcrypt.m4:17: warning: underquoted definition of AM_PATH_LIBMCRYPT run info '(automake)Extending aclocal' or see http://sources.redhat.com/automake/automake.html#Extending-aclocal /opt/csw/share/aclocal/gtk.m4:7: warning: underquoted definition of AM_PATH_GTK /opt/csw/share/aclocal/glib.m4:8: warning: underquoted definition of AM_PATH_GLIB bash-3.00$ ./configure AR=gar checking for a BSD-compatible install... ./install-sh -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for style of include used by make... GNU checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking dependency style of gcc... gcc3 checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking for gcc... (cached) gcc checking whether we are using the GNU C compiler... (cached) yes checking whether gcc accepts -g... (cached) yes checking for gcc option to accept ISO C89... (cached) none needed checking dependency style of gcc... (cached) gcc3 checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking dependency style of g++... gcc3 checking for setsockopt in -lnsl... no checking for accept in -lsocket... yes checking build system type... i386-pc-solaris2.11 checking host system type... i386-pc-solaris2.11 checking whether pthreads work with -pthreads... yes checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE checking if more special flags are required for pthreads... -D_REENTRANT checking for cc_r... gcc checking for CC_r... g++ checking for a sed that does not truncate output... /opt/csw/bin/gsed checking for grep that handles long lines and -e... /usr/xpg4/bin/grep checking for egrep... /usr/xpg4/bin/grep -E checking for ld used by gcc... /usr/ccs/bin/ld checking if the linker (/usr/ccs/bin/ld) is GNU ld... no checking for /usr/ccs/bin/ld option to reload object files... -r checking for BSD-compatible nm... /usr/ccs/bin/nm -p checking whether ln -s works... yes checking how to recognise dependent libraries... pass_all checking how to run the C preprocessor... gcc -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking dlfcn.h usability... yes checking dlfcn.h presence... yes checking for dlfcn.h... yes checking how to run the C++ preprocessor... g++ -E checking for g77... no checking for xlf... no checking for f77... f77 checking whether we are using the GNU Fortran 77 compiler... no checking whether f77 accepts -g... yes checking the maximum length of command line arguments... 262144 checking command to parse /usr/ccs/bin/nm -p output from gcc object... ok checking for objdir... .libs checking for ar... gar checking for ranlib... no checking for strip... no checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC checking if gcc PIC flag -fPIC works... yes checking if gcc static flag -static works... no checking if gcc supports -c -o file.o... yes checking whether the gcc linker (/usr/ccs/bin/ld) supports shared libraries... yes checking whether -lc should be explicitly linked in... yes checking dynamic linker characteristics... solaris2.11 ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... no checking for shl_load... no checking for shl_load in -ldld... no checking for dlopen... yes checking whether a program can dlopen itself... yes checking whether a statically linked program can dlopen itself... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes configure: creating libtool appending configuration tag "CXX" to libtool checking for ld used by g++... /usr/ccs/bin/ld checking if the linker (/usr/ccs/bin/ld) is GNU ld... no checking whether the g++ linker (/usr/ccs/bin/ld) supports shared libraries... yes checking for g++ option to produce PIC... -fPIC checking if g++ PIC flag -fPIC works... yes checking if g++ static flag -static works... no checking if g++ supports -c -o file.o... yes checking whether the g++ linker (/usr/ccs/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... solaris2.11 ld.so checking how to hardcode library paths into programs... immediate appending configuration tag "F77" to libtool checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking for f77 option to produce PIC... -fPIC checking if f77 PIC flag -fPIC works... no checking if f77 static flag -static works... no checking if f77 supports -c -o file.o... yes checking whether the f77 linker (/usr/ccs/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... f90: Warning: Option -print-search-dirs passed to ld, if ld is invoked, ignored otherwise Usage: f90 [ options ] files. Use 'f90 -flags' for details solaris2.11 ld.so checking how to hardcode library paths into programs... immediate configure: loggertype is cxxtools configure: creating ./config.status config.status: creating Makefile config.status: creating src/Makefile config.status: creating include/Makefile config.status: creating demo/Makefile config.status: creating cxxtools-config config.status: creating src/config.h config.status: src/config.h is unchanged config.status: creating include/cxxtools/config.h config.status: include/cxxtools/config.h is unchanged config.status: executing depfiles commands === configuring in libltdl (/tmp/cxxtools-1.4.5/libltdl) configure: running /bin/bash ./configure '--prefix=/usr/local' 'AR=gar' '--enable-ltdl-convenience' --cache-file=/dev/null --srcdir=. checking for a BSD-compatible install... ./install-sh -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for style of include used by make... GNU checking dependency style of gcc... none checking for an ANSI C-conforming const... yes checking for inline... inline checking build system type... i386-pc-solaris2.11 checking host system type... i386-pc-solaris2.11 checking for a sed that does not truncate output... /opt/csw/bin/gsed checking for grep that handles long lines and -e... /usr/xpg4/bin/grep checking for egrep... /usr/xpg4/bin/grep -E checking for ld used by gcc... /usr/ccs/bin/ld checking if the linker (/usr/ccs/bin/ld) is GNU ld... no checking for /usr/ccs/bin/ld option to reload object files... -r checking for BSD-compatible nm... /usr/ccs/bin/nm -p checking whether ln -s works... yes checking how to recognise dependent libraries... pass_all checking how to run the C preprocessor... gcc -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking dlfcn.h usability... yes checking dlfcn.h presence... yes checking for dlfcn.h... yes checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking dependency style of g++... none checking how to run the C++ preprocessor... g++ -E checking for g77... no checking for xlf... no checking for f77... f77 checking whether we are using the GNU Fortran 77 compiler... no checking whether f77 accepts -g... yes checking the maximum length of command line arguments... 262144 checking command to parse /usr/ccs/bin/nm -p output from gcc object... ok checking for objdir... .libs checking for ar... gar checking for ranlib... no checking for strip... no checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC checking if gcc PIC flag -fPIC works... yes checking if gcc static flag -static works... no checking if gcc supports -c -o file.o... yes checking whether the gcc linker (/usr/ccs/bin/ld) supports shared libraries... yes checking whether -lc should be explicitly linked in... yes checking dynamic linker characteristics... solaris2.11 ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... no checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes configure: creating libtool appending configuration tag "CXX" to libtool checking for ld used by g++... /usr/ccs/bin/ld checking if the linker (/usr/ccs/bin/ld) is GNU ld... no checking whether the g++ linker (/usr/ccs/bin/ld) supports shared libraries... yes checking for g++ option to produce PIC... -fPIC checking if g++ PIC flag -fPIC works... yes checking if g++ static flag -static works... no checking if g++ supports -c -o file.o... yes checking whether the g++ linker (/usr/ccs/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... solaris2.11 ld.so checking how to hardcode library paths into programs... immediate appending configuration tag "F77" to libtool checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking for f77 option to produce PIC... -fPIC checking if f77 PIC flag -fPIC works... no checking if f77 static flag -static works... no checking if f77 supports -c -o file.o... yes checking whether the f77 linker (/usr/ccs/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... f90: Warning: Option -print-search-dirs passed to ld, if ld is invoked, ignored otherwise Usage: f90 [ options ] files. Use 'f90 -flags' for details solaris2.11 ld.so checking how to hardcode library paths into programs... immediate checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking which extension is used for loadable modules... .so checking which variable specifies run-time library path... LD_LIBRARY_PATH checking for the default library search path... /lib /usr/lib checking for objdir... .libs checking whether libtool supports -dlopen/-dlpreopen... yes checking for shl_load... no checking for shl_load in -ldld... no checking for dlopen in -ldl... yes checking for dlerror... yes checking for _ prefix in compiled symbols... no checking whether deplibs are loaded by dlopen... yes checking argz.h usability... no checking argz.h presence... no checking for argz.h... no checking for error_t... no checking for argz_append... no checking for argz_create_sep... no checking for argz_insert... no checking for argz_next... no checking for argz_stringify... no checking assert.h usability... yes checking assert.h presence... yes checking for assert.h... yes checking ctype.h usability... yes checking ctype.h presence... yes checking for ctype.h... yes checking errno.h usability... yes checking errno.h presence... yes checking for errno.h... yes checking malloc.h usability... yes checking malloc.h presence... yes checking for malloc.h... yes checking for memory.h... (cached) yes checking for stdlib.h... (cached) yes checking stdio.h usability... yes checking stdio.h presence... yes checking for stdio.h... yes checking for unistd.h... (cached) yes checking dl.h usability... no checking dl.h presence... no checking for dl.h... no checking sys/dl.h usability... yes checking sys/dl.h presence... yes checking for sys/dl.h... yes checking dld.h usability... no checking dld.h presence... no checking for dld.h... no checking mach-o/dyld.h usability... no checking mach-o/dyld.h presence... no checking for mach-o/dyld.h... no checking for string.h... (cached) yes checking for strchr... yes checking for strrchr... yes checking for memcpy... yes checking for memmove... yes checking for strcmp... yes checking for closedir... yes checking for opendir... yes checking for readdir... yes configure: creating ./config.status config.status: creating Makefile config.status: creating config.h config.status: executing depfiles commands bash-3.00$ gmake Making all in libltdl gmake[1]: Entering directory `/tmp/cxxtools-1.4.5/libltdl' gmake all-am gmake[2]: Entering directory `/tmp/cxxtools-1.4.5/libltdl' /bin/bash ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -c -o ltdl.lo ltdl.c gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -c ltdl.c -fPIC -DPIC -o .libs/ltdl.o gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -c ltdl.c -o ltdl.o >/dev/null 2>&1 /bin/bash ./libtool --tag=CC --mode=link gcc -g -O2 -o libltdlc.la ltdl.lo -ldl rm -fr .libs/libltdlc.a .libs/libltdlc.la gar cru .libs/libltdlc.a .libs/ltdl.o : .libs/libltdlc.a creating libltdlc.la (cd .libs && rm -f libltdlc.la && ln -s ../libltdlc.la libltdlc.la) gmake[2]: Leaving directory `/tmp/cxxtools-1.4.5/libltdl' gmake[1]: Leaving directory `/tmp/cxxtools-1.4.5/libltdl' Making all in src gmake[1]: Entering directory `/tmp/cxxtools-1.4.5/src' gmake all-am gmake[2]: Entering directory `/tmp/cxxtools-1.4.5/src' if /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I. -I../include/cxxtools -I../include -I../libltdl -D_REENTRANT -pthreads -g -O2 -MT libcxxtools_la-iconvstream.lo -MD -MP -MF ".deps/libcxxtools_la-iconvstream.Tpo" -c -o libcxxtools_la-iconvstream.lo `test -f 'iconvstream.cpp' || echo './'`iconvstream.cpp; \ then mv -f ".deps/libcxxtools_la-iconvstream.Tpo" ".deps/libcxxtools_la-iconvstream.Plo"; else rm -f ".deps/libcxxtools_la-iconvstream.Tpo"; exit 1; fi g++ -DHAVE_CONFIG_H -I. -I. -I. -I../include/cxxtools -I../include -I../libltdl -D_REENTRANT -pthreads -g -O2 -MT libcxxtools_la-iconvstream.lo -MD -MP -MF .deps/libcxxtools_la-iconvstream.Tpo -c iconvstream.cpp -fPIC -DPIC -o .libs/libcxxtools_la-iconvstream.o iconvstream.cpp: In member function 'virtual int cxxtools::iconvstreambuf::overflow(int)': iconvstream.cpp:106: error: invalid conversion from 'char**' to 'const char**' iconvstream.cpp:106: error: initializing argument 2 of 'size_t libiconv(void*, const char**, size_t*, char**, size_t*)' gmake[2]: *** [libcxxtools_la-iconvstream.lo] Error 1 gmake[2]: Leaving directory `/tmp/cxxtools-1.4.5/src' gmake[1]: *** [all] Error 2 gmake[1]: Leaving directory `/tmp/cxxtools-1.4.5/src' gmake: *** [all-recursive] Error 1 bash-3.00$ libtool --version ltmain.sh (GNU libtool) 1.5.22 (1.1220.2.365 2005/12/18 22:14:06) autoconf --version autoconf (GNU Autoconf) 2.61 automake --version automake (GNU automake) 1.9.6 gmake --version GNU Make 3.81 gcc --version gcc (GCC) 4.0.2 g++ --version g++ (GCC) 4.0.2 It still woun't work. The option with -library=stlport4 I am aware of, I did post about it here, http://forum.java.sun.com/thread.jspa?forumID=850&threadID=5070889 I use the sun studio compiler and also Intel C++, sometimes portland. sometimes comeau. mainly because of the warnings, and additional information. For the moment the interesting with sun studio is the linux port of the compiler and the solaris dtrace dynamic tracing compiler and tracing utility to observe, debug and tune tntnet and cxxtools. I'd like to do something like this: http://developers.sun.com/solaris/articles/dtrace_ajax.html with tntnet. I found two postings about tntnet in Search Results across Sun sites. http://onesearch.sun.com/search/onesearch/index.jsp?qt=tntnet&qp_name=null&subCat=siteforumid%3Ajava850&site=dev&dftab=siteforumid%3Ajava850&chooseCat=javaall&col=developer-forums Parts of what you write I did not quite understand. > The current gcc release for Solaris is included in the > SFE project: > > http://pkgbuild.sourceforge.net/spec-files-extra/ > > It builds with Sun Studio 12 on Solaris 10 and > Solaris Express. Something like: > > % svn co > https://pkgbuild.svn.sourceforge.net/svnroot/pkgbuild/spec-files-extra/trunk > spec-files-extra > % cd spec-files-extra > % pkgtool build --download SFEgcc.spec > > Then to use it requires passing -R/usr/gnu/lib > when linking programs. this is greek to me. Could you please elaborate? I did compile exactly the same line from the makefile sinply by replacing g++ with CC, CC -DHAVE_CONFIG_H -I. -I. -I. -I../include/cxxtools -I../include -I../libltdl -D_REENTRANT -pthreads -g -O2 -MT libcxxtools_la-iconvstream.lo -MD -MP -MF .deps/libcxxtools_la-iconvstream.Tpo -c iconvstream.cpp -fPIC -DPIC -o .libs/libcxxtools_la-iconvstream.o I have the understanding that Sun Studio 12 has a Linux compatibility mode, and that both modes ARM and ANSI mode can be supported. -compat[={4|5}] Sets the major release compatibility mode of the compiler. This option controls the __cplusplus and __SUNPRO_CC_COMPAT preprocessor symbols. The C++ compiler has two principal modes. The com- patibility mode accepts the Annotated C++ Refer- ence Manual (ARM) semantics and language defined by the 4.2 compiler (-compat[=4]). The standard mode accepts constructs according to the ANSI/ISO standard (standard mode, -compat=5). These two modes are incompatible with each other because the ANSI/ISO standard forces significant, incompatible changes in name mangling, vtable layout, and other ABI details. These two modes are differentiated by the -compat option as shown in the following table. I think the error is in the code, or something on my system can be broken. On debian etch and fedora it worked, on debian sarge I had to do something with the code, IIRC. Best regards Morten ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ Tntnet-general mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/tntnet-general
