Hi, I met a CMake error, “Variable KernelArch is not set” when I tried to build a seL4 project based on the open source code of the UNSW course, Advanced Operating System, aka. AOS.
The original version uses odroidc2 as the building platform, and I want to build it with the riscv gnu toolchain and simulate it on qemu-riscv-virt.
Here is the repository: https://github.com/SEL4PROJ/AOS-manifest
The building hierachy is as the basic build system structure, with init-build.sh, setting.cmake and CMakeLists.txt in the top level. And the top level contains kernel, tools, and project folders, in which there are CMakeLists.txt and .cmake files.
Since I have no experience on cmake, I tried to compare the manifest xml between AOS project and seL4test project. I found that the major difference between them are in “init-build.sh”, “setting.cmake” and the “CMakeList.txt” in the top level. There are also some unused libraries in AOS project.
I tried deleting the “set PLATFORM odroidc2” command in the setting.cmake, and added the DCROSSCOMPILER=riscv-unknown-linux-gnu, DPLATFORM=qemu-riscv-virt in the build command. But they doesn’t work.
After checking the “/kernel/configs/seL4Config.cmake”, it says that the error is caused since KernelArch is left as empty string… And I want to ask whether I have set anything improperly....
I will appreciate for any help.
Thank you for reading my question!
Hi all
A friendly reminder that the seL4 developer hangout is on again this week:
* Sydney: Wed, Jul 26, 5pm
For your time zone, please see the calendar: https://sel4.systems/contact/
Zoom link: https://unsw.zoom.us/j/82640784431
cheers
Birg
---
Dr. Birgit Brecknell
Project Officer
Trustworthy Systems, UNSW, birgit.brecknell(a)unsw.edu.au<mailto:birgit.brecknell@unsw.edu.au>
seL4 Foundation, birgit(a)sel4.systems<mailto:birgit@sel4.systems>
0433 880 571
Mon 9am-5pm
Wed 2pm-5pm
Fri 9am-5pm
Hi, I met a problem when building seL4test project with riscv toolchain, with the float operations compiled as soft-float. Here are my configuration commands:
python3 ~/bin/repo init -u https://github.com/seL4/sel4test-manifest
python3 ~/bin/repo sync
mkdir build-riscv
cd build-riscv
../init-build.sh -DPLATFORM=qemu-riscv-virt -DCROSS_COMPILER_PREFIX=riscv64-unknown-linux-gnu- -DSIMULATION=TRUE
ninja
The terminal reported "can't link double-float modules with soft-float modules" errors when compiling fpu.c, and thus stopped compilation.
I have tried rebuilding the glibc version riscv toolchain, with multilib enabled. But it doesn't work.
I also checked the terminal, it says that I'm compiling with march=riscv64imac_zicsr_zifencei -mabi=lp64, which as the best of my knowledge, means compiling the float as soft-float.
I want to know whether I lossed something. I would appreciate for any help.
Thanks in advance.
Hi all
A friendly reminder that the seL4 developer hangout is on again this week:
* Sydney: Wed, Jul 12, 8am
For your time zone, please see the calendar: https://sel4.systems/contact/
Zoom link: https://unsw.zoom.us/j/82640784431
cheers
Birg
---
Dr. Birgit Brecknell
Project Officer
Trustworthy Systems, UNSW, birgit.brecknell(a)unsw.edu.au<mailto:birgit.brecknell@unsw.edu.au>
seL4 Foundation, birgit(a)sel4.systems<mailto:birgit@sel4.systems>
0433 880 571
Mon 9am-5pm
Wed 2pm-5pm
Fri 9am-5pm