[netperf-talk] netperf4: solaris building, and usage..
Rick Jones
rick.jones2 at hp.com
Mon May 22 09:39:23 PDT 2006
Andrew Gallatin wrote:
> I'm trying to get netperf4 working on Solaris because I need a
> multi-threaded bandwidth benchmark (as opposed to iperf, which, while
> it does threads, is mainly a gettimeofday benchmark).
>
> I checked this out from svn:
> http://www.netperf.org/svn/netperf4/branches/glib_migration
>
> I'm trying to build on Solaris10U1, sparc and x86.
> On x86, I've actually managed to produce binaries, but
> I'm unsure as yet what to do with them. Here are the
> problems I've encountered, and the hacks I've applied
> to get them out of my way:
>
> 1) Solaris 10U1 has a glib2, pkg-config, and all that GNUish stuff,
> but probably not the one you want. The build dies with complaints
> that it cannot find gstdio.h. To work around this, I installed glib2,
> libxml2 and pkg-config from blastwave.org and re-configured.
Ah, I guess those guys included the glibconfig.h file that sunfreeware
forgot.
>
> 2) Somewhere in here, the build dies because it cannot find
> netsysstats_kstat10.c and netlib_kstat10.c. This confused
> me, since configure knows about them. Do they exist, just
> not on this branch? Anyway, I copied the _none variants
> over to their names.
That is the correct first step. That will give files with "null" CPU
util and processor affinity calls.
> 2) At this point, the build dies complaining about passing a
> GNUish --export-dynamic dynamic to ld. I edited src/Makefile
> by hand and removed this flag.
Libtool bug perhaps, or was there an actual --export-dynamic in one of
the ".am" makefiles?
> 3) After 2 hours, I now have binaries (woo-hoo!). But I
> have no clue how to use them.
That's OK, neither do I :)
>
> When I try to start netserver, it dies:
> establish_listen: could not resolve host '
>
> I started it like I always have in the past:
> src/netserver
>
> Running with --nodaemonize shows that its SEGV'ing
> due to a null localhost_name:
>
> Program received signal SIGSEGV, Segmentation fault.
> 0xfeac4acc in strlen () from /lib/libc.so.1
> (gdb) bt
> #0 0xfeac4acc in strlen () from /lib/libc.so.1
> #1 0xfeb1a086 in _ndoprnt () from /lib/libc.so.1
> #2 0xfeb1cc0d in fprintf () from /lib/libc.so.1
> #3 0x08056d07 in establish_listen (hostname=0x0,
> service=0x805a46a "netperf4", af=1, addrlenp=0x8047388) at
> netlib.c:1748
> #4 0x08054600 in main (argc=1, argv=0x80477f8) at netserver.c:787
> gdb) frame 4
> #4 0x08054600 in main (argc=1, argv=0x80477f8) at netserver.c:787
> 787 listenfd = establish_listen(local_host_name,
> (gdb) p local_host_name
> $1 = 0x0
Hmm, seems that solaris dumps core where others might not. You can use
the -L option to specify the local control endpoint stuff. As a start
you can try -L localhost so src/netserver -L localhost
Make sure that "netperf4" is in /etc/services or whatever your system
uses to lookup service names.
Also make sure that /etc/xml/catalog got updated during the make install
to include an entry for netperf.
rick jones
>
>
> Please help..
>
> Thanks,
>
> Drew
>
> _______________________________________________
> netperf-talk mailing list
> netperf-talk at netperf.org
> http://www.netperf.org/cgi-bin/mailman/listinfo/netperf-talk
More information about the netperf-talk
mailing list