GithubHelp home page GithubHelp logo

sel4 / camkes-manifest Goto Github PK

View Code? Open in Web Editor NEW
20.0 20.0 22.0 575 KB

Top level project for CAmkES, a component platform that provides support for developing and building static seL4 systems as a collection of interacting components.

Home Page: http://wiki.sel4.systems/CAmkES/

camkes

camkes-manifest's Introduction

The seL4 microkernel

CII Best Practices CI seL4Test C Parser Compile Proof Sync RefMan XML

This project contains the source code of seL4 microkernel.

For details about the seL4 microkernel, including details about its formal correctness proof, please see the sel4.systems website and associated FAQ.

DOIs for citing recent releases of this repository:

  • DOI

We welcome contributions to seL4. Please see the website for information on how to contribute.

This repository is usually not used in isolation, but as part of the build system in a larger project.

seL4 Basics

Community

See the contact links on the seL4 website for the full list.

Reporting security vulnerabilities

If you believe you have found a security vulnerability in seL4 or related software, we ask you to follow our vulnerability disclosure policy.

Manual

A hosted version of the manual for the most recent release can be found here.

A web version of the API can be found here

Repository Overview

  • include and src: C and ASM source code of seL4
  • tools: build tools
  • libsel4: C bindings for the seL4 ABI
  • manual: LaTeX sources of the seL4 reference manual

Build Instructions

See the seL4 website for build instructions.

Status

A list of releases and current project status can be found under seL4 releases.

License

See the file LICENSE.md.

camkes-manifest's People

Contributors

adriandanis avatar ajaysusarla avatar axel-h avatar branden-data61 avatar gridbugs avatar ikuz avatar japhethlim avatar jashank avatar kent-mcleod avatar lsf37 avatar pingerino avatar podhrmic avatar sel4-ci avatar wellmcgarnicle avatar wom-bat avatar xurtis avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

camkes-manifest's Issues

App hellodataport executed faild

Firtst,I add files and dirs in apps directory for hellodataport.I followed the manual( https://docs.sel4.systems/projects/camkes/manual.html ).but when I execute in bash with command below:
../init-build.sh -DPLATFORM=sabre -DAARCH32=1 -DCAMKES_APP=hellodataport -DSIMULATION=1
But the logs reports errors below,is anyone have ideas?Thanks!

xu@xu-HP-Slim-Desktop-S01-pF1xxx:~/code/camkes-project/hellodataport_build$ ../init-build.sh -DPLATFORM=sabre -DAARCH32=1 -DCAMKES_APP=hellodataport -DSIMULATION=1
loading initial cache file /home/xu/code/camkes-project/projects/camkes/settings.cmake
-- Set platform details from PLATFORM=sabre
--   KernelPlatform: imx6
--   KernelARMPlatform: sabre
-- Setting from flags KernelSel4Arch: aarch32
-- Found seL4: /home/xu/code/camkes-project/kernel  
-- Found GCC with prefix arm-linux-gnueabi-
-- Found GCC with prefix arm-linux-gnueabi-
-- The C compiler identification is GNU 9.3.0
-- The CXX compiler identification is GNU 9.3.0
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/arm-linux-gnueabi-gcc
-- Check for working C compiler: /usr/bin/arm-linux-gnueabi-gcc
-- Check for working C compiler: /usr/bin/arm-linux-gnueabi-gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/arm-linux-gnueabi-g++
-- Check for working CXX compiler: /usr/bin/arm-linux-gnueabi-g++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found camkes-tool: /home/xu/code/camkes-project/projects/camkes-tool  
-- Found global-components: /home/xu/code/camkes-project/projects/global-components  
-- Found sel4_projects_libs: /home/xu/code/camkes-project/projects/seL4_projects_libs  
-- Found elfloader-tool: /home/xu/code/camkes-project/tools/seL4/elfloader-tool  
-- Found musllibc: /home/xu/code/camkes-project/projects/musllibc  
-- Found util_libs: /home/xu/code/camkes-project/projects/util_libs  
-- Found seL4_libs: /home/xu/code/camkes-project/projects/seL4_libs  
-- Found projects_libs: /home/xu/code/camkes-project/projects/projects_libs  
-- Found capdl: /home/xu/code/camkes-project/projects/capdl  
-- /home/xu/code/camkes-project/hellodataport_build/kernel/gen_headers/plat/machine/devices_gen.h is out of date. Regenerating...
WARNING:root:Only mapping 4096/16384 bytes from node /soc/aips-bus@2100000/serial@21e8000, region 0. Set kernel_size in YAML to silence.
interrupts for device /soc/aips-bus@2100000/serial@21e8000
interrupts for device /soc/interrupt-controller@a01000
interrupts for device /soc/l2-cache@a02000
interrupts for device /soc/timer@a00600
-- CPIO test cpio_reproducible_flag PASSED
-- Detecting cached version of: capDL-tool
-- Found Git: /usr/bin/git (found version "2.25.1") 
--   Not found cache entry for capDL-tool - will build from source
-- Found sel4runtime: /home/xu/code/camkes-project/projects/sel4runtime  
-- Performing Test HARD_FLOAT
-- Performing Test HARD_FLOAT - Failed
-- Performing Test SOFTFP_FLOAT
-- Performing Test SOFTFP_FLOAT - Success
-- Performing Test compiler_arch_test
-- Performing Test compiler_arch_test - Success
-- libmuslc architecture: 'arm' (from KernelSel4Arch 'aarch32')
-- Detecting cached version of: musllibc
--   Not found cache entry for musllibc - will build from source
-- /home/xu/code/camkes-project/hellodataport_build/ast.pickle is out of date. Regenerating...
ERROR:CAmkES:/home/xu/code/camkes-project/projects/camkes/apps/hellodataport/components/Ping/Ping.camkes:7:   dataport MyData_t d2;
ERROR:CAmkES:import 'Porttype.idl4' not found
CMake Error at /home/xu/code/camkes-project/projects/camkes-tool/camkes.cmake:524 (message):
  Failed to generate
  /home/xu/code/camkes-project/hellodataport_build/ast.pickle
Call Stack (most recent call first):
  CMakeLists.txt:40 (GenerateCAmkESRootserver)


-- Configuring incomplete, errors occurred!
See also "/home/xu/code/camkes-project/hellodataport_build/CMakeFiles/CMakeOutput.log".
See also "/home/xu/code/camkes-project/hellodataport_build/CMakeFiles/CMakeError.log".

Lwip issue with camkes and odroidc2

Trying to build a camkes application with a component that tries to use the lwip library results in this error message:

FAILED: client.instance.bin
: && /usr/bin/ccache /usr/bin/aarch64-linux-gnu-gcc --sysroot=/home/nkem/Documents/Test2/build -march=armv8-a+crc -D__KERNEL_64__ -g -D__KERNEL_64__ -static -nostdlib -z max-page-size=0x1000 -static -nostdlib -u _camkes_start -e _camkes_start -Wl,--script=/home/nkem/Documents/Test2/build/client/linker.lds -Wl,-umuslcsys_init_muslc /home/nkem/Documents/Test2/build/lib/crt0.o /home/nkem/Documents/Test2/build/lib/crti.o /usr/lib/gcc-cross/aarch64-linux-gnu/7/crtbegin.o CMakeFiles/client.instance.bin.dir/apps/lwip_test/components/Client/src/main.c.obj CMakeFiles/client.instance.bin.dir/client/camkes.c.obj CMakeFiles/client.instance.bin.dir/client/camkes.environment.c.obj CMakeFiles/client.instance.bin.dir/client/eth_drv_seL4Ethdriver_0.c.obj -Wl,--start-group -lgcc -lgcc_eh libsel4/libsel4.a sel4runtime/libsel4runtime.a camkes-tool/libsel4camkes/libsel4camkes.a seL4_libs/libsel4sync/libsel4sync.a util_libs/libutils/libutils.a seL4_libs/libsel4vka/libsel4vka.a seL4_libs/libsel4utils/libsel4utils.a seL4_libs/libsel4bench/libsel4bench.a seL4_libs/libsel4platsupport/libsel4platsupport.a util_libs/libplatsupport/libplatsupport.a seL4_libs/libsel4vspace/libsel4vspace.a seL4_libs/libsel4muslcsys/libsel4muslcsys.a -llwip seL4_libs/libsel4utils/libsel4utils.a seL4_libs/libsel4platsupport/libsel4platsupport.a sel4runtime/libsel4runtime.a util_libs/libplatsupport/libplatsupport.a util_libs/libfdt/libfdt.a -Wl,--undefined=arm_gic_ptr,--undefined=tegra_ictlr_ptr,--undefined=arm_gicv3_ptr,--undefined=fsl_avic_ptr,--undefined=ti_omap3_ptr seL4_libs/libsel4simple-default/libsel4simple-default.a seL4_libs/libsel4vspace/libsel4vspace.a seL4_libs/libsel4simple/libsel4simple.a seL4_libs/libsel4vka/libsel4vka.a util_libs/libelf/libelf.a util_libs/libcpio/libcpio.a -Wl,-u -Wl,__vsyscall_ptr seL4_libs/libsel4debug/libsel4debug.a projects_libs/libvirtqueue/libvirtqueue.a libsel4/libsel4.a util_libs/libutils/libutils.a musllibc/build-temp/stage/lib/libc.a -Wl,--end-group /usr/lib/gcc-cross/aarch64-linux-gnu/7/crtend.o /home/nkem/Documents/Test2/build/lib/crtn.o -o client.instance.bin && :
/usr/lib/gcc-cross/aarch64-linux-gnu/7/../../../../aarch64-linux-gnu/bin/ld: cannot find -llwip
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.

rumprun_hello app is not working

I added a comment in #5, but the issue was closed so I'd like to post it as a new issue.

I tried to run rumprun_hello with camkes but the rumprun crashed with errors:

[email protected]:608 simple_get_extended_bootinfo_length not implemented
[email protected]:149 Unimplemented
[email protected]:47 Failed to allocate cslot: error -1
[email protected]:306 [Cond failed: res != 0]
Failed to allocate notification object

I confirmed that this patch (seL4/camkes-tool#41) was applied in my camkes-tool.
How can I fix this?

I got another porblem in debian on desk

/usr/bin/ld: /home/gyi/.stack/programs/x86_64-linux/ghc-7.10.3/lib/ghc-7.10.3/rts/libCffi.a(closures.o): relocation R_X86_64_32 against .rodata' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: /home/gyi/.stack/programs/x86_64-linux/ghc-7.10.3/lib/ghc-7.10.3/rts/libCffi.a(ffi64.o): relocation R_X86_64_32S against .rodata' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: error: ld returned 1 exit status
Exit code ExitFailure 1 while running ["ghc","-clear-package-db","-global-package-db","-hide-all-packages","-package","base","-package","Cabal-1.22.5.0","/tmp/stack6892/Setup.hs","-o","/home/gyi/.stack/setup-exe-cache/x86_64-linux/tmp-setup-Simple-Cabal-1.22.5.0-ghc-7.10.3","-rtsopts"] in /tmp/stack6892/

I don't know how to compile it into .so or use any other solutions to solve the problem. Besides, I will send you the out put later about the "L letter" on ubuntu building.

rumprun user apps not worked correctly

hi.
i'm recently worked on sel4 with camkes framework. when i compile rumprun_hello on x86_64 platform its compiled and build correctly but when run with qemu by ./simulate script, program crashed with this errors:
[email protected]:600 simple_get_extended_bootinfo_length not implemented
FAULT HANDLER: data fault from hello.hello_0_control (ID 0x1) on address 0x8, pc = 0x402b7f, fsr = 0x6
FAULT HANDLER: Register dump:
FAULT HANDLER: rip :0x402b7f

so i found that this method not supported yet so i return 0 in this method
for second problem that cause failure if trace program and i found that in "init rumprun" process the program failed in the /projects/sel4runtime/include/sel4_arch/x86_64/sel4runtime/thread_arch.h file and sel4runtime_set_tls_base method.
so i read git log and in recently commit your team use sel4runtime for thread management, so when running rumprun_hello we crashed in that versioin. can you help me fix this bug???? thanks for your attention.

I got a problem building camkes on ubuntu

Everytime when i make, there is always an error saying xxxx.cdl : unxpected 'L' but hexadecimal digit or ':' and I have to go into the cdl file to manually delete the 'L' letter. Where can find the script that generate those cdl files. I don't want to delete those L manually every time

WARNING: Installation path /home/alan/camkes-project/projects/capdl/capDL-tool not found on the PATH environment variable make: Leaving directory '/home/alan/camkes-project/projects/capdl/capDL-tool' [parse-capDL] done. [cpio-strip] building... [CC] cpio-strip [cpio-strip] done. [apps/capdl-loader-experimental] building... [HEADERS] [STAGE] debug.h [STAGE] capdl_spec.h [STAGE] capdl.h [STAGE] autoconf.h [GEN] capdl_spec.c parse-capDL: "/home/alan/camkes-project/build/arm/imx31/simple/simple.cdl" (line 119, column 4): unexpected "L" expecting hexadecimal digit or ":" CallStack (from HasCallStack): error, called at Main.hs:130:19 in main:Main /home/alan/camkes-project/apps/capdl-loader-experimental/Makefile:50: recipe for target '/home/alan/camkes-project/build/arm/imx31/capdl-loader-experimental/src/capdl_spec.c' failed make[1]: *** [/home/alan/camkes-project/build/arm/imx31/capdl-loader-experimental/src/capdl_spec.c] Error 1 tools/common/project.mk:330: recipe for target 'capdl-loader-experimental' failed make: *** [capdl-loader-experimental] Error 2

Ninja build error - Camkes Tutorial

Hello,

I'm following along the tutorial specified here: https://docs.sel4.systems/projects/camkes/. After invoking:

  • ../init-build.sh -DPLATFORM=sabre -DAARCH32=1 -DCAMKES_APP=adder -DSIMULATION=1
  • ninja

I'm getting this build error, please see attached. I'm not sure how to go about fixing this dependency issue.
Screenshot from 2021-03-31 14-58-53

I'm running ubantu 20.04 TS and have installed all the base sel4 dependencies, etc.

Best,
J.H

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.