2

我正在尝试使用pocl为 RISCV64 交叉编译 OpenCL 程序。此链接的幻灯片 18:https : //riscv.org/wp-content/uploads/2015/01/riscv-software-toolchain-workshop-jan2015.pdf 似乎表明可以为 RISCV 后端生成标量代码. 我正在使用 pocl-0.8(基于 llvm 3.3,因为这是 riscv-llvm 后端的稳定版本)。

我运行配置命令如下:

./configure CC=/path/to/riscv/bin/riscv64-unknown-elf-gcc CXX=/path/to/riscv/bin/riscv64-unknown-elf-g++ --host=riscv64-unknown-elf

我收到以下错误:

configure: error: unable to find the libtool dl library (usually libltdl-dev)

如果我为我的本机系统 (x86_64) 配置 pocl,我不会收到任何错误。所以,我猜我需要上面错误消息中提到的库的 RISCV 变体,但我不知道该怎么做。我将不胜感激。谢谢!

4

1 回答 1

1

你想在 RISC-V 系统上运行 pocl 来生成 RISC-V 代码还是在主机 x64 系统上运行它来生成 RISC-V?

你的配置命令

./configure CC=riscv64-unknown-elf-gcc CXX=riscv64-unknown-elf-g++ --host=riscv64-unknown-elf

用于在 RISC-V 上编译本机 pocl,这很困难(您需要完整的跨环境和 RISC-V 目标 cpu/emulator/board 以及 linux、libc 和许多数据包)。即使这样也是不正确的,因为您的主机(您开始编译 pocl 的机器)不是 riscv,而是 x64(用于--target在配置中设置目标架构)。

但是如果你想在 x64 上运行 pocl,不要./configure运行中设置 CC 和 CXX,host 和 target 以获得原生的 x64 pocl。llvm 将拥有所有后端,并允许您在 x64 上启动 pocl 时生成 RISC-V 代码。

于 2017-03-15T02:49:20.850 回答