Ethereal-dev: [Ethereal-dev] cannot link 0.9.0 command too long

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Patrick Wolfe <pjw@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Date: Thu, 3 Jan 2002 21:53:53 -0600 (CST)
I hope I'm not repeating a known problem - just got back from a vacation, and 
missed all the mailing list messages since mid december.

I've built many versions of ethereal before on my Solaris 2.6 workstation, but 
0.9.0 fails at the linker stage with "Output line too long." messages followed 
by bogus "Undefined symbol" errors (because the linker command line got 
truncated). An (short) extract of the output of make is at the end of this 
message.

The bourne shell script "libtool" takes the command line that is passed to it 
and runs each argument through a loop, eventually appending some text to a 
variable, but the whole linker command line is so long now, that the Bourne 
shell cannot handle it (the shell has a maximum command line length limit of 
10240 characters - same as KSH and BASH).

I was thinking that translating libtool to perl might work around the problem, 
but that's not going to be a trivial task (since libtool is long and I don't 
really understand what it is doing).

Has anyone else run into this?  Can someone else suggest a better solution.

Thanks

--

Patrick Wolfe (pjw@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx)
National Networks, Cingular Wireless

Here's the relevant output of make:


make[2]: Entering directory `/usr/local/pjw/src/sniffer/ethereal-0.9.0'
/bin/sh ./libtool --mode=link gcc  -Wall -W -Wno-unused -g -O2 -Wno-return-type 
-DFUNCPROTO=15 -I. -I./wiretap -I./epan -I/usr/local/include 
-I/usr/local/lib/glib/include -I/usr/local/include -I/usr/openwin/include 
-L/usr/local/lib -R/usr/local/lib -L/usr/local/ssl/lib -R/usr/local/ssl/lib -o 
ethereal -export-dynamic packet-aarp.o packet-afs.o packet-aim.o packet-arp.o 
packet-ascend.o packet-atalk.o packet-atm.o packet-auto_rp.o packet-bacapp.o 
packet-bacnet.o packet-beep.o packet-bgp.o packet-bootp.o packet-bootparams.o 
packet-bpdu.o packet-bvlc.o packet-cdp.o packet-cgmp.o packet-chdlc.o 
packet-clip.o packet-clnp.o packet-cops.o packet-cups.o packet-data.o 
packet-dcerpc.o packet-dcerpc-conv.o packet-dcerpc-dfs.o packet-dcerpc-epm.o 
packet-dcerpc-lsa.o packet-dcerpc-mgmt.o packet-dcerpc-ndr.o 
packet-dcerpc-netlogon.o packet-dcerpc-oxid.o packet-dcerpc-reg.o 
packet-dcerpc-remact.o packet-dcerpc-samr.o packet-dcerpc-spoolss.o 
packet-dcerpc-srvsvc.o packet-dcerpc-wkssvc.o packet-ddtp.o packet-dec-bpdu.o 
packet-diameter.o packet-dns.o packet-dsi.o packet-dvmrp.o packet-eap.o 
packet-eapol.o packet-eigrp.o packet-esis.o packet-eth.o packet-ethertype.o 
packet-fddi.o packet-fr.o packet-frame.o packet-ftp.o packet-giop.o 
packet-gmrp.o packet-gnutella.o packet-gre.o packet-gtp.o packet-gvrp.o 
packet-h1.o packet-h261.o packet-hclnfsd.o packet-hsrp.o packet-http.o 
packet-icap.o packet-icmpv6.o packet-icp.o packet-icq.o packet-ieee80211.o 
packet-ieee8023.o packet-igmp.o packet-igrp.o packet-imap.o packet-ip.o 
packet-ipp.o packet-ipsec.o packet-ipv6.o packet-ipx.o packet-irc.o 
packet-isakmp.o packet-iscsi.o packet-isis.o packet-isis-clv.o 
packet-isis-hello.o packet-isis-lsp.o packet-isis-snp.o packet-isl.o 
packet-isup.o packet-iua.o packet-kerberos.o packet-klm.o packet-l2tp.o 
packet-lapb.o packet-lapbether.o packet-lapd.o packet-ldap.o packet-ldp.o 
packet-llc.o packet-lmi.o packet-lpd.o packet-m2pa.o packet-m2tp.o packet-m3ua.o 
packet-mapi.o packet-mbtcp.o packet-mip.o packet-mmse.o packet-mount.o 
packet-mpeg1.o packet-mpls.o packet-mrdisc.o packet-msdp.o packet-msnip.o 
packet-msproxy.o packet-mtp2.o packet-mtp3.o packet-nbipx.o packet-nbns.o 
packet-ncp.o packet-ncp2222.o packet-ndmp.o packet-netbios.o packet-nfs.o 
packet-nisplus.o packet-nlm.o packet-nntp.o packet-ntp.o packet-null.o 
packet-osi.o packet-osi-options.o packet-ospf.o packet-pcnfsd.o packet-pgm.o 
packet-pim.o packet-pop.o packet-portmap.o packet-ppp.o packet-pppoe.o 
packet-pptp.o packet-prism.o packet-q2931.o packet-q931.o packet-qllc.o 
packet-quake.o packet-quakeworld.o packet-quake2.o packet-quake3.o 
packet-radius.o packet-ranap.o packet-raw.o packet-rip.o packet-ripng.o 
packet-rlogin.o packet-rpc.o packet-rquota.o packet-rsh.o packet-rsvp.o 
packet-rtcp.o packet-rtp.o packet-rtsp.o packet-rwall.o packet-rx.o packet-sap.o 
packet-sctp.o packet-sdp.o packet-sip.o packet-skinny.o packet-sll.o 
packet-smb.o packet-smb-browse.o packet-smb-common.o packet-smb-logon.o 
packet-smb-mailslot.o packet-smb-pipe.o packet-smpp.o packet-smtp.o packet-sna.o 
packet-snmp.o packet-socks.o packet-spray.o packet-srvloc.o packet-sscop.o 
packet-ssl.o packet-stat.o packet-stat-notify.o packet-sua.o packet-syslog.o 
packet-tacacs.o packet-tcp.o packet-telnet.o packet-tftp.o packet-time.o 
packet-tns.o packet-tpkt.o packet-tr.o packet-trmac.o packet-ucp.o packet-udp.o 
packet-v120.o packet-vines.o packet-vj.o packet-vlan.o packet-vrrp.o 
packet-vtp.o packet-wccp.o packet-wcp.o packet-who.o packet-wap.o packet-wtls.o 
packet-wsp.o packet-wtp.o packet-x11.o packet-x25.o packet-xot.o packet-yhoo.o 
packet-ypbind.o packet-yppasswd.o packet-ypserv.o packet-ypxfr.o packet-zebra.o 
afn.o asn1.o column.o conditions.o capture_stop_conditions.o follow.o in_cksum.o 
ipproto.o packet-dcerpc-nt.o pcap-util.o prefs.o print.o ps.o ptvcursor.o 
reassemble.o ringbuffer.o util.o xdlc.o xmlstub.o register.o capture.o file.o 
filters.o proto_hier_stats.o summary.o  wiretap/libwiretap.a gtk/libui.a 
epan/libethereal.a epan/ftypes/libftypes.a epan/dfilter/libdfilter.a -lsnmp 
-lkstat -lcrypto "-dlopen" self "-dlopen" plugins/gryphon/gryphon.la "-dlopen" 
plugins/mgcp/mgcp.la "-dlopen" plugins/giop/cosnaming.la "-dlopen" 
plugins/giop/coseventcomm.la -lpcap -L/usr/local/lib -L/usr/openwin/lib 
-R/usr/openwin/lib -lgtk -lgdk -lgmodule -lglib -ldl -lXext -lX11 -lsocket -lnsl 
-lm -lz -lcrypto
rm -f .libs/ethereal.nm .libs/ethereal.nmS .libs/ethereal.nmT
creating .libs/etherealS.c
(cd .libs && gcc -c -fno-builtin -fno-rtti -fno-exceptions "etherealS.c")
rm -f .libs/etherealS.c .libs/ethereal.nm .libs/ethereal.nmS .libs/ethereal.nmT
Output line too long.
Output line too long.
Output line too long.
Output line too long.
Output line too long.
Output line too long.
gcc -Wall -W -Wno-unused -g -O2 -Wno-return-type -DFUNCPROTO=15 -I. -I./wiretap 
-I./epan -I/usr/local/include -I/usr/local/lib/glib/include -I/usr/local/include 
-I/usr/openwin/include -L/usr/local/lib -L/usr/local/ssl/lib -o ethereal 
packet-aarp.o packet-afs.o packet-aim.o packet-arp.o packet-ascend.o 
packet-atalk.o packet-atm.o packet-auto_rp.o packet-bacapp.o packet-bacnet.o 
packet-beep.o packet-bgp.o packet-bootp.o packet-bootparams.o packet-bpdu.o 
packet-bvlc.o packet-cdp.o packet-cgmp.o packet-chdlc.o packet-clip.o 
packet-clnp.o packet-cops.o packet-cups.o packet-data.o packet-dcerpc.o 
packet-dcerpc-conv.o packet-dcerpc-dfs.o packet-dcerpc-epm.o packet-dcerpc-lsa.o 
packet-dcerpc-mgmt.o packet-dcerpc-ndr.o packet-dcerpc-netlogon.o 
packet-dcerpc-oxid.o packet-dcerpc-reg.o packet-dcerpc-remact.o 
packet-dcerpc-samr.o packet-dcerpc-spoolss.o packet-dcerpc-srvsvc.o 
packet-dcerpc-wkssvc.o packet-ddtp.o packet-dec-bpdu.o packet-diameter.o 
packet-dns.o packet-dsi.o packet-dvmrp.o packet-eap.o packet-eapol.o 
packet-eigrp.o packet-esis.o packet-eth.o packet-ethertype.o packet-fddi.o 
packet-fr.o packet-frame.o packet-ftp.o packet-giop.o packet-gmrp.o 
packet-gnutella.o packet-gre.o packet-gtp.o packet-gvrp.o packet-h1.o 
packet-h261.o packet-hclnfsd.o packet-hsrp.o packet-http.o packet-icap.o 
packet-icmpv6.o packet-icp.o packet-icq.o packet-ieee80211.o packet-ieee8023.o 
packet-igmp.o packet-igrp.o packet-imap.o packet-ip.o packet-ipp.o 
packet-ipsec.o packet-ipv6.o packet-ipx.o packet-irc.o packet-isakmp.o 
packet-iscsi.o packet-isis.o packet-isis-clv.o packet-isis-hello.o 
packet-isis-lsp.o packet-isis-snp.o packet-isl.o packet-isup.o packet-iua.o 
packet-kerberos.o packet-klm.o packet-l2tp.o packet-lapb.o packet-lapbether.o 
packet-lapd.o packet-ldap.o packet-ldp.o packet-llc.o packet-lmi.o packet-lpd.o 
packet-m2pa.o packet-m2tp.o packet-m3ua.o packet-mapi.o packet-mbtcp.o 
packet-mip.o packet-mmse.o packet-mount.o packet-mpeg1.o packet-mpls.o 
packet-mrdisc.o packet-msdp.o packet-msnip.o packet-msproxy.o packet-mtp2.o 
packet-mtp3.o packet-nbipx.o packet-nbns.o packet-ncp.o packet-ncp2222.o 
packet-ndmp.o packet-netbios.o packet-nfs.o packet-nisplus.o packet-nlm.o 
packet-nntp.o packet-ntp.o packet-null.o packet-osi.o packet-osi-options.o 
packet-ospf.o packet-pcnfsd.o packet-pgm.o packet-pim.o packet-pop.o 
packet-portmap.o packet-ppp.o packet-pppoe.o packet-pptp.o packet-prism.o 
packet-q2931.o packet-q931.o packet-qllc.o packet-quake.o packet-quakeworld.o 
packet-quake2.o packet-quake3.o packet-radius.o packet-ranap.o packet-raw.o 
packet-rip.o packet-ripng.o packet-rlogin.o packet-rpc.o packet-rquota.o 
packet-rsh.o packet-rsvp.o packet-rtcp.o packet-rtp.o packet-rtsp.o 
packet-rwall.o packet-rx.o packet-sap.o packet-sctp.o packet-sdp.o packet-sip.o 
packet-skinny.o packet-sll.o packet-smb.o packet-smb-browse.o 
packet-smb-common.o packet-smb-logon.o packet-smb-mailslot.o packet-smb-pipe.o 
packet-smpp.o packet-smtp.o packet-sna.o packet-snmp.o packet-socks.o 
packet-spray.o packet-srvloc.o packet-sscop.o packet-ssl.o packet-stat.o 
packet-stat-notify.o packet-sua.o packet-syslog.o packet-tacacs.o packet-tcp.o 
packet-telnet.o packet-tftp.o packet-time.o packet-tns.o packet-tpkt.o 
packet-tr.o packet-trmac.o packet-ucp.o packet-udp.o packet-v120.o 
packet-vines.o packet-vj.o packet-vlan.o packet-vrrp.o packet-vtp.o 
packet-wccp.o packet-wcp.o packet-who.o packet-wap.o packet-wtls.o packet-wsp.o 
packet-wtp.o packet-x11.o packet-x25.o packet-xot.o packet-yhoo.o 
packet-ypbind.o packet-yppasswd.o packet-ypserv.o packet-ypxfr.o packet-zebra.o 
afn.o asn1.o column.o conditions.o capture_stop_conditions.o follow.o in_cksum.o 
ipproto.o packet-dcerpc-nt.o pcap-util.o prefs.o print.o ps.o ptvcursor.o 
reassemble.o ringbuffer.o util.o xdlc.o xmlstub.o register.o capture.o file.o 
filters.o proto_hier_stats.o summary.o wiretap/libwiretap.a gtk/libui.a 
epan/libethereal.a epan/ftypes/libftypes.a epan/dfilter/libdfilter.a -lsnmp 
-lkstat -lcrypto .libs/etherealS.o -lpcap  -R/usr/local/lib -R/usr/local/ssl/lib 
-R/usr/openwin/lib -R/usr/local/lib -R/usr/local/ssl/lib -R/usr/openwin/lib
Undefined			first referenced
 symbol  			    in file
g_list_last                         packet-giop.o
gtk_drag_dest_set                   gtk/libui.a(gtkclist.o)
gtk_text_set_line_wrap              gtk/libui.a(proto_draw.o)
gtk_button_leave                    gtk/libui.a(gtkclist.o)
gtk_hseparator_new                  gtk/libui.a(tcp_graph.o)
gtk_entry_get_type                  gtk/libui.a(follow_dlg.o)
gtk_widget_unref                    gtk/libui.a(color_dlg.o)

...
[truncated the remaining 200-300 lines of error messages]