Hello misc,

I've just gone into /usr/src and done "TARGET=arm64 make cross-gcc" on
6.2 with a 6.2 source tree installed. This shell session describes what I'm
running into better than I could in words:
$ cd /tmp
$ ed hello.c
hello.c: No such file or directory
a
#include <stdio.h>
int
main()
{
        printf("hello world\n");
}
.
wq
60
$ /usr/cross/arm64/usr/bin/aarch64-unknown-openbsd6.2-clang -c -o hello.o hello.c
$ /usr/cross/arm64/usr/bin/aarch64-unknown-openbsd6.2-objdump -S hello.o

hello.o:     file format elf64-aarch64

/usr/cross/arm64/usr/bin/aarch64-unknown-openbsd6.2-objdump: Can't disassemble for architecture aarch64

$ ^D

Now, I know clang is the system compiler on arm64. I also know that the
version of binutils in /usr/src/gnu predates aarch64's existence by a good handful of years, while LLVM 4.0 is very recent. The question is, then, what's to be done about this? I'm not actually trying to cross-compile on ARM, just getting a feel for the cross-* targets for other purposes. I'm poring through /usr/src/Makefile.cross, and unfortunately `apropos cross` only turns up some X11 and Perl references. Any pointers to understanding the cross-* system are
appreciated.

Thanks,
yuuko

Reply via email to