Hi -
On 2017-02-23 at 15:51 Zach Zimmerman <[email protected]> wrote:
> I don't know how it happened but in my install directory I have two
> directories.
> zach@zach-HP-Z420-Workstation:~$ ls ~/install/
> x86_64-ucb-akaros x86_64-ucb-akaros-gcc
>
> x86_64-ucb-akaros/ contains only the sysroot directory and the following
> files inside /sysroot/usr/include:
> find /home/zach/install/x86_64-ucb-akaros/sysroot/usr/include
It looks like something got confused. elfutils tries to figure out the
SYSROOT, given the XCC_ROOT. For instance, my AKAROS_XCC_ROOT has this:
$ ls -l $AKAROS_XCC_ROOT
total 24
drwxr-x--- 2 brho eng 4096 Feb 23 10:59 bin
drwxr-x--- 2 brho eng 4096 Feb 23 10:59 include
drwxr-x--- 3 brho eng 4096 Feb 23 10:59 lib
drwxr-x--- 3 brho eng 4096 Mar 11 2016 libexec
drwxr-x--- 6 brho eng 4096 Mar 11 2016 share
drwxr-x--- 6 brho eng 4096 Mar 11 2016 x86_64-ucb-akaros
In tools/Makefrag (which elfutils includes), it tries to figure out the
sysroot:
# strip the trailing - from CROSS_COMPILE
AKAROS_PREFIX = $(shell x=$(CROSS_COMPILE); echo $${x%?})
AKAROS_SYSROOT = $(AKAROS_XCC_ROOT)/$(AKAROS_PREFIX)/sysroot/
For me, that's:
$ ls -l $AKAROS_XCC_ROOT/x86_64-ucb-akaros/sysroot
total 4
drwxr-x--- 9 brho eng 4096 Mar 11 2016 usr
Other stuff in the PREFIX:
$ ls -l $AKAROS_XCC_ROOT/x86_64-ucb-akaros/
total 16
drwxr-x--- 2 brho eng 4096 Feb 23 10:57 bin
drwxr-x--- 3 brho eng 4096 Mar 11 2016 include
drwxr-x--- 3 brho eng 4096 Feb 23 10:59 lib
drwxr-x--- 3 brho eng 4096 May 25 2016 sysroot
Since you have a directory called ~/install/x86_64-ucb-akaros-gcc, my
guess is that is your actual AKAROS_XCC_ROOT, not ~/install. That
would be the directory where your toolchain contents are (which
is the equivalent of my ls $AKAROS_XCC_ROOT).
You probably set that directory (~/install/x86_64-ucb-akaros-gcc) in
your toolchain's Makelocal. Here's mine:
$ cat tools/compilers/gcc-glibc/Makelocal
RISCV_INSTDIR := /home/brho/akaros/ros-gcc-glibc/install-riscv-ros-gcc/
X86_64_INSTDIR := /home/brho/akaros/ros-gcc-glibc/install-x86_64-ros-gcc/
MAKE_JOBS := 12
So my guess is you have ~/install/x86_64-ucb-akaros-gcc/ in your
Makelocal, but have AKAROS_XCC_ROOT = ~/install/
Regardless, sorry this is such a pain. We should probably add some
asserter checks to make sure AKAROS_XCC_ROOT actually has things that
should be in that directory.
Barret
--
You received this message because you are subscribed to the Google Groups
"Akaros" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
For more options, visit https://groups.google.com/d/optout.