Wireshark-bugs: [Wireshark-bugs] [Bug 7637] New: build failure: floorl not defined (gcc 3.3.6 on

Date: Wed, 15 Aug 2012 08:53:44 -0700 (PDT)
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7637

           Summary: build failure: floorl not defined (gcc 3.3.6 on
                    Solaris 9 SPARC)
           Product: Wireshark
           Version: 1.8.1
          Platform: SPARC
        OS/Version: Solaris
            Status: NEW
          Severity: Normal
          Priority: Low
         Component: Common utilities (libwsutil)
        AssignedTo: bugzilla-admin@xxxxxxxxxxxxx
        ReportedBy: irwin@xxxxxxxxxxxxx


Build Information:
./tshark -v
TShark 1.8.1 (SVN Rev Unknown from unknown)

Copyright 1998-2012 Gerald Combs <gerald@xxxxxxxxxxxxx> and contributors.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Compiled (32-bit) with GLib 2.32.3, with libpcap, with libz 1.2.7, without
POSIX
capabilities, without SMI, without c-ares, without ADNS, without Lua, without
Python, without GnuTLS, without Gcrypt, without Kerberos, without GeoIP.

Running on SunOS 5.9, without locale, with libpcap version 1.3.0, with libz
1.2.7.

Built using gcc 3.3.6.

--
Error building wireshark 1.8.1 using gcc 3.3.6 on Solaris 9 SPARC:

...
libtool: link: gcc -g -O3 -Wall -W -Wendif-labels -Wpointer-arith -Wcast-align
-Wformat-security -Wno-return-type -D_REENTRANT -D_PTHREADS
-D_POSIX_PTHREAD_SEMANTICS -I/usr/local/include/gtk-2.0
-I/usr/local/lib/gtk-2.0/include -I/usr/local/include/atk-1.0
-I/usr/local/include/cairo -I/usr/local/include/gdk-pixbuf-2.0
-I/usr/local/include/pango-1.0 -I/usr/local/include/gio-unix-2.0/
-I/usr/local/include -I/usr/local/include/glib-2.0
-I/usr/local/lib/glib-2.0/include -I/usr/local/include/pixman-1
-I/usr/local/include/freetype2 -I/usr/local/include/libpng15 -o .libs/wireshark
wireshark-capture-pcap-util-unix.o wireshark-capture-pcap-util.o
wireshark-cfile.o wireshark-clopts_common.o wireshark-disabled_protos.o
wireshark-frame_data_sequence.o wireshark-packet-range.o wireshark-print.o
wireshark-ps.o wireshark-sync_pipe_write.o wireshark-timestats.o
wireshark-tap-megaco-common.o wireshark-tap-rtp-common.o
wireshark-version_info.o wireshark-capture_ifinfo.o wireshark-capture_sync!
 .o wireshark-capture_ui_utils.o wireshark-airpcap_loader.o wireshark-capture.o
wireshark-capture_info.o wireshark-capture_opts.o wireshark-color_filters.o
wireshark-file.o wireshark-fileset.o wireshark-filters.o wireshark-g711.o
wireshark-merge.o wireshark-proto_hier_stats.o wireshark-recent.o
wireshark-summary.o wireshark-tempfile.o wireshark-u3.o .libs/wiresharkS.o
-Wl,-R -Wl,/usr/local/lib  -L/usr/local/lib ui/gtk/libgtkui.a
ui/gtk/libgtkui_dirty.a ui/libui.a codecs/libcodec.a
wiretap/.libs/libwiretap.so epan/.libs/libwireshark.so
/var/local/src/wireshark-1.8.1+PU-1/wiretap/.libs/libwiretap.so
/var/local/src/wireshark-1.8.1+PU-1/wsutil/.libs/libwsutil.so
wsutil/.libs/libwsutil.so -lcrypto -lpcap -L/usr/openwin/lib
/usr/local/lib/libgtk-x11-2.0.so
-L/usr/local/src/gcc-3.3.6/sparc-sun-solaris2.9/sparc-sun-solaris2.9/libstdc++-v3/src
-L/usr/local/src/gcc-3.3.6/sparc-sun-solaris2.9/sparc-sun-solaris2.9/libstdc++-v3/src/.libs
-L/usr/local/src/gcc-3.3.6/sparc-sun-solaris2.9/gc!
 c -L/usr/ccs/bin -L/usr/ccs/lib
-L/usr/local/lib/gcc-lib/sparc-sun-solaris2.9/../..
/usr/local/lib/libgdk-x11-2.0.so -lXext /usr/local/lib/libatk-1.0.so
/usr/local/lib/libpangocairo-1.0.so /usr/local/lib/libpangoft2-1.0.so
/usr/local/lib/./libstdc++.so -lgcc_s /usr/local/lib/libgdk_pixbuf-2.0.so
/usr/local/lib/libgio-2.0.so -lsocket -lresolv /usr/local/lib/libcairo.so
/usr/local/lib/libpixman-1.so /usr/local/lib/libpng15.so
/usr/local/lib/libXrender.so -lX11 /usr/local/lib/libpango-1.0.so
/usr/local/lib/libfontconfig.so /usr/local/lib/libfreetype.so -lbz2
/usr/local/lib/libexpat.so /usr/local/lib/libgobject-2.0.so
/usr/local/lib/libffi.so /usr/local/lib/libgthread-2.0.so
/usr/local/lib/libgmodule-2.0.so -ldl /usr/local/lib/libglib-2.0.so -lpthread
-lthread -lrt -lm -lnsl -lz -R/usr/local/lib -R/usr/local/lib/.
-R/usr/openwin/lib -R/usr/local/lib:/usr/openwin/lib:/usr/dt/lib
ld: warning: file /var/local/src/wireshark-1.8.1/wiretap/.libs/libwiretap.so:
linked to wiretap/.libs/libwiretap.so: attempted multiple inclusion of file
ld: warning: file wsutil/.libs/libwsutil.so: linked to
/var/local/src/wireshark-1.8.1/wsutil/.libs/libwsutil.so: attempted multiple
inclusion of file
Undefined                       first referenced
 symbol                             in file
floorl                             
ui/gtk/libgtkui.a(libgtkui_a-time_shift_dlg.o)
ld: fatal: Symbol referencing errors. No output written to .libs/wireshark
collect2: ld returned 1 exit status
gmake[2]: *** [wireshark] Error 1
gmake[2]: Leaving directory `/var/local/src/wireshark-1.8.1


Error doesn't happen on these newer gcc's:
 gcc 4.1.2 on Solaris  9 SPARC
 gcc 4.2.4 on Solaris 10 SPARC
 gcc 4.3.6 on Solaris 10 SPARC
 gcc 4.4.7 on Solaris 10 SPARC

Looks like floorl is in C99, but gcc 3.3.6 defaults to -std=gnu89.

I see that floorl is defined in /usr/lib/libm.so on Solaris 9 SPARC and Solaris
10 SPARC.
In Solaris 9 SPARC headers, floorl not declared for C, but is declared if
__cplusplus >= 199711L.
In Solaris 10 SPARC headers, floorl is also declared if _STDC_C99, along with
some other cases.

-- 
Configure bugmail: https://bugs.wireshark.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.