Hello: On Thu, Oct 29, 2020 at 8:30 AM Sachin More <[email protected]> wrote:
> On Wed, Oct 28, 2020 at 8:27 PM Nick Spinale <[email protected]> wrote: > >> > Can I prepare, say seL4 11.0 and then apply your patches and then >> compile using seL4's build system (or your build system if it is in public >> domain)? >> >> At the moment, I’m unable to share the rest of the code for this >> particular project. I have, however, published our Raspberry Pi 4-related >> patches to public branches of 'seL4' [1] and ‘seL4_tools' [2]. These >> patches, which are the extent of our Raspberry Pi 4-related patches for >> upstream seL4 repositories, only encompasses the bootloader (“elfloader”) >> and the seL4 kernel itself. The projects that you might use for getting >> started, such as ‘sel4test’ [3], depend on platform support for userland >> libraries such as those found in ’seL4_libs’ [4]. >> > > Thanks for the detailed explanation. > I started with the seL4 kernel link that you provided. I am using Ubuntu 20 running on the RP4 to build the kernel: git clone https://github.com/nspin/seL4.git git checkout origin/rpi4 mkdir build ; cd build cmake -C /home/smore/seL4/configs/ARM_verified.cmake -G Ninja -DCMAKE_TOOLCHAIN_FILE=/home/smore/seL4/gcc.cmake /home/smore/seL4 However, when I compile, I get the following errors. ninja kernel.elf [9/30] Building C object CMakeFiles/kernel_bf_..._lib.dir/kernel_bf_gen_target_1_pbf_temp.c.obj FAILED: CMakeFiles/kernel_bf_gen_target_1_pbf_temp_lib.dir/kernel_bf_gen_target_1_pbf_temp.c.obj /usr/bin/ccache /usr/bin/gcc --sysroot=/home/smore/seL4/build -I../include/plat/default -I../include -I../include/32 -I../include/arch/arm -I../include/arch/arm/arch/32 -I../include/plat/imx6 -I../include/plat/imx6/plat/32 -I../include/arch/arm/armv/armv7-a -I../include/arch/arm/armv/armv7-a/32 -I../libsel4/include -I../libsel4/arch_include/arm -I../libsel4/sel4_arch_include/aarch32 -I../libsel4/sel4_plat_include/imx6 -I../libsel4/mode_include/32 -Igen_config -Iautoconf -Igen_headers -march=armv7-a -marm -D__KERNEL_32__ -O3 -DNDEBUG -nostdinc -nostdlib -O2 -DHAVE_AUTOCONF -mfloat-abi=soft -fno-pic -fno-pie -fno-stack-protector -fno-asynchronous-unwind-tables -std=c99 -Wall -Werror -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wmissing-declarations -Wundef -Wpointer-arith -Wno-nonnull -ffreestanding -E -P -MD -MT CMakeFiles/kernel_bf_gen_target_1_pbf_temp_lib.dir/kernel_bf_gen_target_1_pbf_temp.c.obj -MF CMakeFiles/kernel_bf_gen_target_1_pbf_temp_lib.dir/kernel_bf_gen_target_1_pbf_temp.c.obj.d -o CMakeFiles/kernel_bf_gen_target_1_pbf_temp_lib.dir/kernel_bf_gen_target_1_pbf_temp.c.obj -c kernel_bf_gen_target_1_pbf_temp.c gcc: error: unrecognized command-line option '-marm' gcc: error: unrecognized command-line option '-mfloat-abi=soft' [10/30] Building C object CMakeFiles/kernel_al...lib.dir/kernel_all_pp_prune_wrapper_temp.c.obj FAILED: CMakeFiles/kernel_all_pp_prune_wrapper_temp_lib.dir/kernel_all_pp_prune_wrapper_temp.c.obj /usr/bin/ccache /usr/bin/gcc --sysroot=/home/smore/seL4/build -I../include/plat/default -I../include -I../include/32 -I../include/arch/arm -I../include/arch/arm/arch/32 -I../include/plat/imx6 -I../include/plat/imx6/plat/32 -I../include/arch/arm/armv/armv7-a -I../include/arch/arm/armv/armv7-a/32 -I../libsel4/include -I../libsel4/arch_include/arm -I../libsel4/sel4_arch_include/aarch32 -I../libsel4/sel4_plat_include/imx6 -I../libsel4/mode_include/32 -Igen_config -Iautoconf -Igen_headers -march=armv7-a -marm -D__KERNEL_32__ -O3 -DNDEBUG -nostdinc -nostdlib -O2 -DHAVE_AUTOCONF -mfloat-abi=soft -fno-pic -fno-pie -fno-stack-protector -fno-asynchronous-unwind-tables -std=c99 -Wall -Werror -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wmissing-declarations -Wundef -Wpointer-arith -Wno-nonnull -ffreestanding -E -CC -I/home/smore/seL4/build/generated_prune -MD -MT CMakeFiles/kernel_all_pp_prune_wrapper_temp_lib.dir/kernel_all_pp_prune_wrapper_temp.c.obj -MF CMakeFiles/kernel_all_pp_prune_wrapper_temp_lib.dir/kernel_all_pp_prune_wrapper_temp.c.obj.d -o CMakeFiles/kernel_all_pp_prune_wrapper_temp_lib.dir/kernel_all_pp_prune_wrapper_temp.c.obj -c kernel_all_pp_prune_wrapper_temp.c gcc: error: unrecognized command-line option '-marm' gcc: error: unrecognized command-line option '-mfloat-abi=soft' ninja: build stopped: subcommand failed. It seems that I am using the wrong toolchain for compilation. Any ideas? thanks, Sachin If you decide to add Raspberry Pi 4 support to those userland libraries, >> I’d be happy to help out with that. >> > > I am not confident if I will be able to add RP4 support for the userland > libraries. But I will give it a try and keep everyone posted if I get > somewhere. > > thanks, > Sachin > > >> >> [1] https://github.com/nspin/seL4/tree/rpi4 >> [2] https://github.com/nspin/seL4_tools/tree/rpi4 >> [3] https://github.com/seL4/sel4test-manifest >> [4] https://github.com/seL4/seL4_libs >> >> >> - - - - >> Nick Spinale (nickspinale.com) >> Arm Research, Cambridge UK >> - - - - >> >> IMPORTANT NOTICE: The contents of this email and any attachments are >> confidential and may also be privileged. If you are not the intended >> recipient, please notify the sender immediately and do not disclose the >> contents to any other person, use it for any purpose, or store or copy the >> information in any medium. Thank you. >> > _______________________________________________ Devel mailing list [email protected] https://sel4.systems/lists/listinfo/devel
