[augeas-devel] [Augeas] #262: augtool.c echo conflicts with echo() from SYSV libcurses

Augeas trac at fedorahosted.org
Fri Mar 2 18:41:52 UTC 2012


#262: augtool.c echo conflicts with echo() from SYSV libcurses
----------------------+---------------------
 Reporter:  solstice  |       Owner:  lutter
     Type:  defect    |      Status:  new
 Priority:  minor     |   Milestone:  next
Component:  Augeas    |     Version:  0.10.0
 Keywords:  solaris   |  Blocked By:
 Blocking:            |
----------------------+---------------------
 Building augeas-0.10.0 on x86_64-sun-solaris2.10 with the no-cost
 Oracle/Sun Studio 12.2 toolchain.

 When doing the final link for augtool, I get this warning from the Solaris
 linker:

 libtool: link: cc -Wp,-D_FORTIFY_SOURCE=2 -I ../gnulib/lib
 -I/local/gnu/include/
 libxml2 -Xa -xc99=all -xO3 -xtarget=native -m64 -xarch=native
 -I/local/include -
 I/local/gnu/include -I/local/include -o .libs/augtool augtool.o
 -L/local/lib/64
  -L/local/gnu/lib/64 ./.libs/libaugeas.so
 /local/src/RPM/BUILD/augeas-0.10.0/src
 /.libs/libfa.so -lreadline -lcurses /local/gnu/lib/64/libxml2.so -lpthread
 -lz -
 lm -lsocket -lnsl ../gnulib/lib/.libs/libgnu.a -mt -R/local/lib/64
 -R/local/gnu/
 lib/64
 ld: warning: symbol `echo' has differing types:
     (file augtool.o type=OBJT; file /usr/ccs/lib/amd64/libcurses.so
 type=FUNC);
     augtool.o definition taken
 ld: warning: symbol `echo' has differing types:
     (file augtool.o type=OBJT; file /usr/ccs/lib/amd64/libcurses.so
 type=FUNC);


 This is happening because augtool is getting linked with with libcurses
 (because of libreadline), and at least for SYSV curses, echo() is a
 function, while augtool has a variable named echo.

 It's just a warning, but the fix is pretty easy; just change the variable
 to be something like "echo_command" instead.

 The patch I used is attached.

-- 
Ticket URL: <https://fedorahosted.org/augeas/ticket/262>
Augeas <http://augeas.net/>
a configuration API




More information about the augeas-devel mailing list