From: Kang Kai <Kai.Kang@windriver.com>
To: Khem Raj <raj.khem@gmail.com>
Cc: openembedded-devel@lists.openembedded.org
Subject: Re: [meta-networking][PATCH 2/4] atftp: build with gcc 5.2
Date: Mon, 24 Aug 2015 16:53:54 +0800 [thread overview]
Message-ID: <55DADBA2.8060205@windriver.com> (raw)
In-Reply-To: <55DA807A.3010107@windriver.com>
On 2015年08月24日 10:24, Kang Kai wrote:
> On 2015年08月22日 00:08, Khem Raj wrote:
>> On Fri, Aug 21, 2015 at 1:37 AM, <kai.kang@windriver.com> wrote:
>>> From: Kai Kang <kai.kang@windriver.com>
>>>
>>> atftp fails to build with gcc 5.2:
>>>
>>> tftp_def.h:54:14: warning: inline function 'Strncpy' declared but
>>> never defined
>>>
>>> GCC 5 defaults to -std=gnu11 instead of -std=gnu89. The semantics of
>>> inline function changes. Pass '-std=gnu89' to gcc to compile atftp.
>>>
>>> Ref:
>>> https://gcc.gnu.org/gcc-5/porting_to.html
>>>
>>> Signed-off-by: Kai Kang <kai.kang@windriver.com>
>>> ---
>>> meta-networking/recipes-daemons/atftp/atftp_git.bb | 2 ++
>>> 1 file changed, 2 insertions(+)
>>>
>>> diff --git a/meta-networking/recipes-daemons/atftp/atftp_git.bb
>>> b/meta-networking/recipes-daemons/atftp/atftp_git.bb
>>> index b53f637..0ece58f 100644
>>> --- a/meta-networking/recipes-daemons/atftp/atftp_git.bb
>>> +++ b/meta-networking/recipes-daemons/atftp/atftp_git.bb
>>> @@ -32,6 +32,8 @@ USERADD_PACKAGES = "${PN}d"
>>> USERADD_PARAM_${PN}d = "--system --no-create-home --shell
>>> /bin/false \
>>> --user-group nobody"
>>>
>>> +EXTRA_OEMAKE = "CFLAGS='${CFLAGS} -std=gnu89'"
>> this is a woraround and will work, however if you are at and fix it
>> once for all that will be desirable. eg. this file you could move the
>> definition of
>> inline function into the relevant .h file and make it a static inline
>
> Hi Raj,
>
> Thanks. I'll try it.
I tried to move the definition to relevant .h file but it didn't work.
It complained when did link:
options.o: In function `opt_options_to_string':
/buildarea3/kkang/poky-20141111/builds/x86-64-with-meta-oe/tmp/work/core2-64-poky-linux/atftp/0.7.1+gitAU
TOINC+be3291a18c-r3/git/options.c:345: undefined reference to `Strncpy'
options.o:/buildarea3/kkang/poky-20141111/builds/x86-64-with-meta-oe/tmp/work/core2-64-poky-linux/atftp/0
.7.1+gitAUTOINC+be3291a18c-r3/git/options.c:347: more undefined
references to `Strncpy' follow
collect2: error: ld returned 1 exit status
And it has other issues about inline functions that I didn't mention in
the commit message:
git/argz.c:44:8: error: redefinition of 'argz_next'
That's because more complex definitions:
In argz.h:
======================================
extern char *argz_next (__const char *__restrict __argz, size_t __argz_len,
__const char *__restrict __entry) __THROW;
#ifdef __USE_EXTERN_INLINES
extern inline char *
argz_next (__const char *__argz, size_t __argz_len,
__const char *__entry)
{
return __argz_next (__argz, __argz_len, __entry);
}
#endif /* Use extern inlines. */
======================================
In argz.c:
======================================
char * argz_next (const char *argz, size_t argz_len, const char *entry)
{
...
}
======================================
It seems gcc 5 doesn't support redefinition, right?
Compare to Debian, it fixed this issue by pass "-std=gnu89" to compiler too.
Ref:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=777783#12
Thanks,
Kai
>
> --Kai
>
>>
>>> +
>>> do_install_append() {
>>> install -d ${D}${sysconfdir}/init.d
>>> install -m 0755 ${WORKDIR}/atftpd.init
>>> ${D}${sysconfdir}/init.d/atftpd
>>> --
>>> 1.9.1
>>>
>>> --
>>> _______________________________________________
>>> Openembedded-devel mailing list
>>> Openembedded-devel@lists.openembedded.org
>>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>
>
--
Regards,
Neil | Kai Kang
next prev parent reply other threads:[~2015-08-24 8:53 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-21 8:37 [PATCH 0/4] Upgrade packages and fix failure of atftp with gcc 5.2 kai.kang
2015-08-21 8:37 ` [meta-networking][PATCH 1/4] autofs: 5.1.0 -> 5.1.1 kai.kang
2015-08-21 8:37 ` [meta-networking][PATCH 2/4] atftp: build with gcc 5.2 kai.kang
2015-08-21 16:08 ` Khem Raj
2015-08-24 2:24 ` Kang Kai
2015-08-24 8:53 ` Kang Kai [this message]
2015-08-21 8:37 ` [meta-oe][PATCH 3/4] ltrace: 7.2 -> 7.3 kai.kang
2015-08-21 15:58 ` Khem Raj
2015-08-21 8:37 ` [meta-oe][PATCH 4/4] libvpx: 1.3.0 -> 1.4.0 kai.kang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=55DADBA2.8060205@windriver.com \
--to=kai.kang@windriver.com \
--cc=openembedded-devel@lists.openembedded.org \
--cc=raj.khem@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.