[Freeswitch-dev] Error compiling freeswitch 1.6.6 with --disable-debug and possible fix

Michael Jerris mike at jerris.com
Thu Mar 3 02:35:26 MSK 2016


Jira is already filed: https://freeswitch.org/jira/browse/FS-8883 <https://freeswitch.org/jira/browse/FS-8883>  ... waiting on response to my comment still 

> On Mar 2, 2016, at 1:25 PM, Anthony Minessale <anthony.minessale at gmail.com> wrote:
> 
> Open a JIRA in the platform category https://freeswitch.org/jira <https://freeswitch.org/jira>
> 
> 
> On Tue, Feb 23, 2016 at 10:28 PM, <freeswitch-dev.opencode at spamgourmet.com <mailto:freeswitch-dev.opencode at spamgourmet.com>> wrote:
> I'm getting a compilation error compiling the latest production release (1.6.6) when using --disable-debug with certain (as yet undermined) environment settings. The approximate steps I'm following are:
> curl -O https://files.freeswitch.org/releases/freeswitch/freeswitch-1.6.6.tar.xz <https://files.freeswitch.org/releases/freeswitch/freeswitch-1.6.6.tar.xz>
> tar -xvf freeswitch-1.6.6.tar.xz
> cd freeswitch-1.6.6
> ./configure --disable-debug
> make
> 
> Except I'm using makepkg, the build tool for Arch Linux. (It's ultimately for Arch Linux ARM on a Raspberry Pi Zero, but the same thing happens with normal x86_64 Arch Linux). When I use the exact steps above in a shell, make succeeds, but when I run the equivalent within ArchLinux's makepkg tool, I'm getting the following error (lightly sanitized):
>   CC     freeswitch-switch.o
> src/switch.c: In function ‘main’:
> src/switch.c:1194:5: error: ignoring return value of ‘read’, declared with attribute warn_unused_result [-Werror=unused-result]
>      (void)read(fds[1], &v, sizeof(v));
>      ^
> src/switch.c: In function ‘check_fd’:
> src/switch.c:236:5: error: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Werror=unused-result]
>      (void)write(fd, &r, sizeof(r));
>      ^
> cc1: all warnings being treated as errors
> Makefile:1988: recipe for target 'freeswitch-switch.o' failed
> make[2]: *** [freeswitch-switch.o] Error 1
> make[2]: Leaving directory '~/builds/freeswitch/src/freeswitch-1.6.6'
> Makefile:2420: recipe for target 'all-recursive' failed
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory '~/builds/freeswitch/src/freeswitch-1.6.6'
> Makefile:970: recipe for target 'all' failed
> make: *** [all] Error 2
> 
> In parallel, I'm checking with the Arch Linux folks for help understanding the makepkg environment (perhaps some compilation *FLAGS environment variables?) that are likely needed to reproduce the error on other distributions. I'll reply further if I get better data from them.
> 
> However, from a look at configure.ac <http://configure.ac/>, it does appear that unused result warnings/errors are being suppressed via SWITCH_AM_CFLAGS perhaps only in when debug is enabled:
> if test "${enable_debug}" = "yes"; then
>         AC_DEFINE([DEBUG],[],[Enable extra debugging.])
>         saved_CFLAGS="$CFLAGS"
>         CFLAGS=
>         AX_CFLAGS_WARN_ALL_ANSI
>         SWITCH_ANSI_CFLAGS=$CFLAGS
>         CFLAGS="$saved_CFLAGS"
> 
>         if test "x${ax_cv_c_compiler_vendor}" = "xgnu" ; then
>             if test "$ac_cv_gcc_supports_w_no_unused_result" = yes; then
>               APR_ADDTO(SWITCH_AM_CFLAGS, -Wno-unused-result)
>             fi
>             APR_ADDTO(SWITCH_AM_CFLAGS, -g -ggdb)
>             export DEBUG_CFLAGS="-g -ggdb"
>         fi
> 
> fi
> 
> Though I'm a newbie so I may be missing something obvious. (For one, I don't yet understand the difference between SWITCH_AM_CFLAGS and other related variable(s).)
> 
> I'm currently working around the error using the following patch:
> --- configure.ac.old    2016-02-23 16:50:04.190884018 -0800
> +++ configure.ac <http://configure.ac/>        2016-02-23 16:50:29.103970709 -0800
> @@ -410,6 +410,7 @@
>      APR_ADDTO(SWITCH_AM_CXXFLAGS, -fPIC)
>      if test "$ac_cv_gcc_supports_w_no_unused_result" = yes; then
>        APR_ADDTO(SWITCH_AM_CFLAGS, -Werror)
> +      APR_ADDTO(SWITCH_AM_CFLAGS, -Wno-unused-result)
>      fi
>      if test "${enable_64}" = "yes"; then
>         case "$host" in
> @@ -533,9 +534,6 @@
>         CFLAGS="$saved_CFLAGS"
> 
>         if test "x${ax_cv_c_compiler_vendor}" = "xgnu" ; then
> -           if test "$ac_cv_gcc_supports_w_no_unused_result" = yes; then
> -             APR_ADDTO(SWITCH_AM_CFLAGS, -Wno-unused-result)
> -           fi
>             APR_ADDTO(SWITCH_AM_CFLAGS, -g -ggdb)
>             export DEBUG_CFLAGS="-g -ggdb"
>         fi
> 
> 
> Can you tell whether I'm on the right track here (is this a bug in freeswitch's configure script)? If this is the right fix (or close to it), would you be interested in taking it?
> 
> (And apologies if this isn't the best way to format code snippets for this mailing list; please let me know if there's a better way.)
> 
> Thanks,
> 
> David
> 
> 
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org <mailto:consulting at freeswitch.org>
> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
> 
> Official FreeSWITCH Sites
> http://www.freeswitch.org <http://www.freeswitch.org/>
> http://wiki.freeswitch.org <http://wiki.freeswitch.org/>
> http://www.cluecon.com <http://www.cluecon.com/>
> 
> FreeSWITCH-dev mailing list
> FreeSWITCH-dev at lists.freeswitch.org <mailto:FreeSWITCH-dev at lists.freeswitch.org>
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev <http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev>
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev <http://lists.freeswitch.org/mailman/options/freeswitch-dev>
> http://www.freeswitch.org <http://www.freeswitch.org/>
> 
> 
> 
> -- 
> Anthony Minessale II       ♬ @anthmfs  ♬ @FreeSWITCH  ♬
> 
>http://freeswitch.org/ <http://freeswitch.org/>  ☞ http://cluecon.com/ <http://cluecon.com/>  ☞ http://twitter.com/FreeSWITCH <http://twitter.com/FreeSWITCH>
> ☞ irc.freenode.net <http://irc.freenode.net/> #freeswitch ☞ http://freeswitch.org/g+ <http://freeswitch.org/g+>
> 
> ClueCon Weekly Development Call 
> ☎ sip:888 at conference.freeswitch.org <mailto:sip%3A888 at conference.freeswitch.org>  ☎ +19193869900 
> 
> https://www.youtube.com/watch?v=9XXgW34t40s <https://www.youtube.com/watch?v=9XXgW34t40s>
> https://www.youtube.com/watch?v=NLaDpGQuZDA <https://www.youtube.com/watch?v=NLaDpGQuZDA>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
> 
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://wiki.freeswitch.org
> http://www.cluecon.com
> 
> FreeSWITCH-dev mailing list
> FreeSWITCH-dev at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
> http://www.freeswitch.org

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20160302/50f9b747/attachment-0001.html 


Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-dev mailing list