Кросс-компиляция с использованием clang для цели aarch64-cros-linux-gnu - PullRequest
0 голосов
/ 14 декабря 2018

Может быть, у меня глупый вопрос, но я застрял с этим вопросом.Я пытаюсь сделать кросс-компиляцию, используя clang-5.0 простой тестовой программы для цели aarch64-cros-linux-gnu:

int main(int argc, const char **argv)
{
    return 0x2;
}

Итак, когда я запускаю clang с помощью следующей команды:

/home/alex/Dev/CustomToolchains/Google/clang-5.0/aarch64/usr/bin/clang --sysroot=/home/alex/Dev/CustomToolchains/Google/clang-5.0/aarch64/usr/aarch64-cros-linux-gnu -Qunused-arguments -grecord-gcc-switches -fPIE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -pie -fno-omit-frame-pointer main.cxx -o main3 -B/home/alex/Dev/CustomToolchains/Google/clang-5.0/aarch64/bin -target aarch64-cros-linux-gnu

Я получаю сообщение об ошибке:

ld.bfd: no input files
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Но когда я удаляю параметры --sysroot и -target, все в порядке.Я проверил --sysroot путь, и он существует, но я не уверен, что он правильный.clang docs говорит, что эта папка должна содержать каталоги bin, lib, include, но в каталоге sysroot есть только следующие папки:

lib  lib64  NOTICE-eglibc  NOTICE-gdb  sbin  sys-include  usr  var

Итак, как я могу указать правильный путь цепочки инструментов к clang для моей целитройной aarch64-cros-linux-gnu?или где я могу получить этот набор инструментов?

Большое спасибо за ответы.PS.Я новичок со всем персоналом, связанным с компиляцией Linux / Clang / Cros, поэтому прошу прощения за ошибки в моем вопросе.

...