On Wed, Feb 12, 2020 at 12:44 AM Nitish Saboo <nitish.sabo...@gmail.com> wrote:
>
> I have A CGO project.While compiling the project I am getting the following 
> error:
>
> In file included from 
> lib/../deps/syslog/syslog-ng-3.25.1/lib/logmsg/logmsg.h:31:0,
> [07:38:51][shellscript]                  from lib/syslog-node.c:9:
> [07:38:51][shellscript] 
> lib/../deps/syslog/syslog-ng-3.25.1/install/include/syslog-ng/serialize.h: In 
> function 'serialize_read_uint32_array':
> [07:38:51][shellscript] 
> lib/../deps/syslog/syslog-ng-3.25.1/install/include/syslog-ng/serialize.h:120:7:
>  error: 'for' loop initial declarations are only allowed in C99 mode
> [07:38:51][shellscript]        for (int i = 0; i < elements; i++)
> [07:38:51][shellscript]        ^
> [07:38:51][shellscript] 
> lib/../deps/syslog/syslog-ng-3.25.1/install/include/syslog-ng/serialize.h:120:7:
>  note: use option -std=c99 or -std=gnu99 to compile your code
> [07:38:51][shellscript] 
> lib/../deps/syslog/syslog-ng-3.25.1/install/include/syslog-ng/serialize.h: In 
> function 'serialize_read_uint16_array':
> [07:38:51][shellscript] 
> lib/../deps/syslog/syslog-ng-3.25.1/install/include/syslog-ng/serialize.h:134:7:
>  error: 'for' loop initial declarations are only allowed in C99 mode
> [07:38:51][shellscript]        for (int i = 0; i < elements; i++)
>
>
> I am passing these flags for compilation of CGO project:
>
> //#cgo CFLAGS: -I${SRCDIR}/../deps/syslog/syslog-ng-3.6.2/
> //#cgo CFLAGS: -I${SRCDIR}/../deps/syslog/syslog-ng-3.6.2/build
> //#cgo CFLAGS: -I${SRCDIR}/../deps/syslog/syslog-ng-3.6.2/install/include/
> //#cgo CFLAGS: 
> -I${SRCDIR}/../deps/syslog/syslog-ng-3.6.2/install/include/syslog-ng
> //#cgo LDFLAGS: -L${SRCDIR}/../deps/syslog/syslog-ng-3.6.2/install/lib 
> -lsyslog-ng
> //#cgo LDFLAGS: 
> -L${SRCDIR}/../deps/syslog/syslog-ng-3.6.2/install/lib/syslog-ng -ldbparser
> //#cgo pkg-config: eventlog
> //#cgo CFLAGS: -I/usr/include/glib-2.0
> //#cgo CFLAGS: -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
>
> Currently the C code is getting compiled against gcc -std=gnu99.Looks like I 
> have to compile the C code against  gcc -std=C99.
> How can I pass this flag from Go code so that the C code gets compiled 
> against -std=C99.

Try

//#cgo CFLAGS: -std=c99

Ian

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/CAOyqgcU91mZY%2BsRS4KxDJGLWK6vBe1Z%2BsXPrxFuiPW0fJ0FoZw%40mail.gmail.com.

Reply via email to