Issue with arm cross compiler xdev on FreeBSD 10.1
Kai Noetzel
kai.noetzel at gmail.com
Fri Jan 9 22:26:30 UTC 2015
Hi,
I'm having issues trying to build the arm cross compiler on the following
system:
root at bsdcompy:/usr/src # uname -a
FreeBSD bsdcompy 10.1-RELEASE FreeBSD 10.1-RELEASE #0 r274401: Tue Nov 11
21:02:49 UTC 2014
root at releng1.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC
amd64
I checked out:
svn co http://svn.freebsd.org/base/head /usr/src
When I run:
root at bsdcompy:/usr/src # make XDEV=arm XDEV_ARCH=armv6 WITH_GCC=1 xdev
I get the following error:
......
===> xdev lib/libelftc (obj,depend,all)
===> xdev usr.bin/addr2line (obj,depend,all)
cc -O2 -pipe
-I/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/libelftc
-I/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/common -std=gnu99
-fstack-protector -Qunused-arguments -c
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:105:39:
error: passing 'Dwarf_Error' (aka 'struct _Dwarf_Error') to parameter of
incompatible type 'Dwarf_Error *' (aka 'struct _Dwarf_Error *'); take the
address
with &
warnx("dwarf_tag: %s", dwarf_errmsg(de));
^~
&
/usr/include/libdwarf.h:122:39: note: passing argument to parameter here
const char *dwarf_errmsg(Dwarf_Error *);
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:119:14:
error: use of undeclared identifier 'DW_DLV_ERROR'
if (ret == DW_DLV_ERROR)
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:122:8:
warning: implicit declaration of function 'dwarf_formstring' is invalid in
C99 [-Wimplicit-function-declaration]
if (dwarf_formstring(sub_at, &func0, &de))
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:136:7:
warning: implicit declaration of function 'dwarf_global_formref' is invalid
in C99 [-Wimplicit-function-declaration]
if (dwarf_global_formref(spec_at, &ref, &de))
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:138:7:
warning: implicit declaration of function 'dwarf_offdie' is invalid in C99
[-Wimplicit-function-declaration]
if (dwarf_offdie(dbg, ref, &spec_die, &de))
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:150:13:
error: use of undeclared identifier 'DW_DLV_ERROR'
if (ret == DW_DLV_ERROR)
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:151:54:
error: passing 'Dwarf_Error' (aka 'struct _Dwarf_Error') to parameter of
incompatible type 'Dwarf_Error *' (aka 'struct _Dwarf_Error *'); take the
address
with &
errx(EXIT_FAILURE, "dwarf_child: %s", dwarf_errmsg(de));
^~
&
/usr/include/libdwarf.h:122:39: note: passing argument to parameter here
const char *dwarf_errmsg(Dwarf_Error *);
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:157:13:
error: use of undeclared identifier 'DW_DLV_ERROR'
if (ret == DW_DLV_ERROR)
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:158:58:
error: passing 'Dwarf_Error' (aka 'struct _Dwarf_Error') to parameter of
incompatible type 'Dwarf_Error *' (aka 'struct _Dwarf_Error *'); take the
address
with &
errx(EXIT_FAILURE, "dwarf_siblingof: %s", dwarf_errmsg(de));
^~
&
/usr/include/libdwarf.h:122:39: note: passing argument to parameter here
const char *dwarf_errmsg(Dwarf_Error *);
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:189:22:
error: passing 'Dwarf_Error' (aka 'struct _Dwarf_Error') to parameter of
incompatible type 'Dwarf_Error *' (aka 'struct _Dwarf_Error *'); take the
address
with &
dwarf_errmsg(de));
^~
&
/usr/include/libdwarf.h:122:39: note: passing argument to parameter here
const char *dwarf_errmsg(Dwarf_Error *);
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:210:7:
warning: implicit declaration of function 'dwarf_srclines' is invalid in
C99 [-Wimplicit-function-declaration]
if (dwarf_srclines(die, &lbuf, &lcount, &de) != DW_DLV_OK) {
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:211:45:
error: passing 'Dwarf_Error' (aka 'struct _Dwarf_Error') to parameter of
incompatible type 'Dwarf_Error *' (aka 'struct _Dwarf_Error *'); take the
address
with &
warnx("dwarf_srclines: %s", dwarf_errmsg(de));
^~
&
/usr/include/libdwarf.h:122:39: note: passing argument to parameter here
const char *dwarf_errmsg(Dwarf_Error *);
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:219:8:
warning: implicit declaration of function 'dwarf_lineaddr' is invalid in
C99 [-Wimplicit-function-declaration]
if (dwarf_lineaddr(lbuf[i], &lineaddr, &de)) {
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:221:22:
error: passing 'Dwarf_Error' (aka 'struct _Dwarf_Error') to parameter of
incompatible type 'Dwarf_Error *' (aka 'struct _Dwarf_Error *'); take the
address
with &
dwarf_errmsg(de));
^~
&
/usr/include/libdwarf.h:122:39: note: passing argument to parameter here
const char *dwarf_errmsg(Dwarf_Error *);
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:224:8:
warning: implicit declaration of function 'dwarf_lineno' is invalid in C99
[-Wimplicit-function-declaration]
if (dwarf_lineno(lbuf[i], &lineno, &de)) {
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:226:22:
error: passing 'Dwarf_Error' (aka 'struct _Dwarf_Error') to parameter of
incompatible type 'Dwarf_Error *' (aka 'struct _Dwarf_Error *'); take the
address
with &
dwarf_errmsg(de));
^~
&
/usr/include/libdwarf.h:122:39: note: passing argument to parameter here
const char *dwarf_errmsg(Dwarf_Error *);
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:229:8:
warning: implicit declaration of function 'dwarf_linesrc' is invalid in C99
[-Wimplicit-function-declaration]
if (dwarf_linesrc(lbuf[i], &file0, &de)) {
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:231:22:
error: passing 'Dwarf_Error' (aka 'struct _Dwarf_Error') to parameter of
incompatible type 'Dwarf_Error *' (aka 'struct _Dwarf_Error *'); take the
address
with &
dwarf_errmsg(de));
^~
&
/usr/include/libdwarf.h:122:39: note: passing argument to parameter here
const char *dwarf_errmsg(Dwarf_Error *);
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:269:14:
error: use of undeclared identifier 'DW_DLV_ERROR'
if (ret == DW_DLV_ERROR)
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:271:21:
error: passing 'Dwarf_Error' (aka 'struct _Dwarf_Error') to parameter of
incompatible type 'Dwarf_Error *' (aka 'struct _Dwarf_Error *'); take the
address
with &
dwarf_errmsg(de));
^~
&
/usr/include/libdwarf.h:122:39: note: passing argument to parameter here
const char *dwarf_errmsg(Dwarf_Error *);
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:387:46:
error: too many arguments to function call, expected 4, have 6
if (dwarf_init(fd, DW_DLC_READ, NULL, NULL, &dbg, &de))
~~~~~~~~~~ ^~~~~~~~~
/usr/include/libdwarf.h:144:1: note: 'dwarf_init' declared here
int dwarf_init(int, int, Dwarf_Debug *, Dwarf_Error *);
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:388:53:
error: passing 'Dwarf_Error' (aka 'struct _Dwarf_Error') to parameter of
incompatible type 'Dwarf_Error *' (aka 'struct _Dwarf_Error *'); take the
address
with &
errx(EXIT_FAILURE, "dwarf_init: %s", dwarf_errmsg(de));
^~
&
/usr/include/libdwarf.h:122:39: note: passing argument to parameter here
const char *dwarf_errmsg(Dwarf_Error *);
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:390:6:
warning: implicit declaration of function 'dwarf_get_elf' is invalid in C99
[-Wimplicit-function-declaration]
if (dwarf_get_elf(dbg, &e, &de) != DW_DLV_OK)
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:391:56:
error: passing 'Dwarf_Error' (aka 'struct _Dwarf_Error') to parameter of
incompatible type 'Dwarf_Error *' (aka 'struct _Dwarf_Error *'); take the
address
with &
errx(EXIT_FAILURE, "dwarf_get_elf: %s", dwarf_errmsg(de));
^~
&
/usr/include/libdwarf.h:122:39: note: passing argument to parameter here
const char *dwarf_errmsg(Dwarf_Error *);
^
/usr/src/usr.bin/addr2line/../../contrib/elftoolchain/addr2line/addr2line.c:407:15:
warning: incompatible pointer types passing 'Dwarf_Debug' (aka 'struct
_Dwarf_Debug *') to parameter of type 'Dwarf_Debug *'
(aka 'struct _Dwarf_Debug **'); take the address with &
[-Wincompatible-pointer-types]
dwarf_finish(dbg, &de);
^~~
&
/usr/include/libdwarf.h:141:32: note: passing argument to parameter here
int dwarf_finish(Dwarf_Debug *, Dwarf_Error *);
^
9 warnings and 16 errors generated.
*** Error code 1
Stop.
make[2]: stopped in /usr/src/usr.bin/addr2line
*** Error code 1
Stop.
make[1]: stopped in /usr/src
*** Error code 1
Stop.
make: stopped in /usr/src
Would be great if someone could take a look.
Thanks in advance.
Best,
Kai
More information about the freebsd-arm
mailing list