seL4的环境搭建及编译
开发环境 Ubuntu 18.04.6 LTS
1. ninja安装
参考链接:https://blog.csdn.net/u013171226/article/details/120971325
2. xmllint安装
sudo apt-get install libxml2-utils
3.gcc升级到8.0以上版本
seL4编译需要依赖8.0以上的gcc版本,否则编译过程中可能出现如下问题:

根据情况执行安装,参考链接:https://sel4.discourse.group/t/issues-running-test/423/6
sudo apt install gcc-8 g++-8
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 800 --slave /usr/bin/g++ g++ /usr/bin/g++-8
4. python3的升级
ubantu18.04的环境默认python3的版本为python3.6.9,该版本不能安装protobuf,这里升级python3.10.5满足protobuf>=4.21.6
,解决protobuf版本过低关联的google库不全的问题,建议protobuf 4.21.6版本以上。
1、安装依赖:
sudo apt-get install libffi-dev
sudo apt-get update
sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus
sudo apt-get install build-essential libncursesw5-dev libgdbm-dev libc6-dev
sudo apt-get install zlib1g-dev libsqlite3-dev tk-dev
sudo apt-get install libssl-dev openssl
sudo apt-get install libffi-dev
sudo apt-get install libxpm-dev libxext-dev
sudo apt-get install zlib1g-dev libbz2-dev libssl-dev libncurses5-dev libsqlite3-dev
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget
2、进入python官网下载( https://www.python.org/downloads/ )找到Linux版本,并找到对应版本,进行下载

3、安装,将下载的安装包Python-3.10.5.tgz上载到Ubuntu环境,执行如下操作
tar -vxf Python-3.10.5.tgz
cd Python-3.10.5
./configure --prefix=/usr/local/python3.10
./configure --enable-optimizations
sudo make -j16
sudo make install
4、需要通过pip3.10 install 安装如下包,版本仅供参考
sudo ln -sf /usr/local/python3.10/bin/python3.10 /usr/bin/python3.10
sudo ln -sf /usr/local/python3.10/bin/pip3.10 /usr/bin/pip3.10
sudo ln -sf /usr/bin/python3.10 /usr/bin/python (如果需要使用其他python版本需要重新软连接即可)
5、需要通过pip3.10 install 安装如下包,版本仅供参考
aenum 3.1.11
attrs 22.1.0
beautifulsoup4 4.11.1
certifi 2022.9.24
chardet 5.0.0
charset-normalizer 2.1.1
distro 1.8.0
feedparser 6.0.10
future 0.18.2
google 3.0.0
greenlet 1.1.3.post0
grpcio 1.50.0
grpcio-tools 1.50.0
httplib2 0.20.4
idna 3.4
importlib-metadata 5.0.0
importlib-resources 5.10.0
Jinja2 3.1.2
jsonschema 4.16.0
libarchive-c 3.2
MarkupSafe 2.1.1
msgpack 1.0.4
mutagen 1.46.0
neovim 0.3.1
nose 1.3.7
pip 22.3
pkgutil_resolve_name 1.3.10
ply 3.11
protobuf 4.21.8
pyaml 21.10.1
pyelftools 0.29
pyfdt 0.3
pynvim 0.4.3
pyparsing 3.0.9
pyrsistent 0.18.1
pyserial 3.5
PySimpleSOAP 1.16.2
python-debian 0.1.48
python-debianbts 3.2.3
python-libarchive 4.2.1
python3-protobuf 2.5.0
PyYAML 6.0
requests 2.28.1
setuptools 58.1.0
sgmllib3k 1.0.0
sh 1.14.3
six 1.16.0
sortedcontainers 2.4.0
soupsieve 2.3.2.post1
typing_extensions 4.4.0
urllib3 1.26.12
wheel 0.37.1
zipp 3.9.0
6、如果在编译过程中遇到类似的问题,可能grpcio-tools protobuf版本不匹配

可尝试通过如下命令一起安装,保证版本匹配,若出现timeout等国外安装源获取失败等问题,可考虑使用清华源
pip3.10 install -i https://pypi.tuna.tsinghua.edu.cn/simple grpcio-tools protobuf
5、seL4test代码下载、编译
seL4test这个仓官方文档中以repo方式进行下载同步,涉及代理问题,下载不完整,gitlink中备份了一份完整的代码
git clone https://gitlink.org.cn/xuos/seL4test.git
编译,以x86 qemu为例
cd seL4test
mkdir build-x86
cd build-x86
../init-build.sh -DPLATFORM=x86_64 -DSIMULATION=TRUE
ninja
编译完成,在build-x86目录下出现生成可执行文件simulate
执行./simulate即可执行模拟x86架构硬件的运行

参考链接: https://docs.sel4.systems/GettingStarted
seL4的环境搭建及编译
开发环境 Ubuntu 18.04.6 LTS
1. ninja安装
参考链接:https://blog.csdn.net/u013171226/article/details/120971325
2. xmllint安装
3.gcc升级到8.0以上版本
seL4编译需要依赖8.0以上的gcc版本,否则编译过程中可能出现如下问题:
根据情况执行安装,参考链接:https://sel4.discourse.group/t/issues-running-test/423/6
4. python3的升级
ubantu18.04的环境默认python3的版本为python3.6.9,该版本不能安装protobuf,这里升级python3.10.5满足protobuf>=4.21.6
,解决protobuf版本过低关联的google库不全的问题,建议protobuf 4.21.6版本以上。
1、安装依赖:
2、进入python官网下载( https://www.python.org/downloads/ )找到Linux版本,并找到对应版本,进行下载
3、安装,将下载的安装包Python-3.10.5.tgz上载到Ubuntu环境,执行如下操作
4、需要通过pip3.10 install 安装如下包,版本仅供参考
5、需要通过pip3.10 install 安装如下包,版本仅供参考
6、如果在编译过程中遇到类似的问题,可能grpcio-tools protobuf版本不匹配
可尝试通过如下命令一起安装,保证版本匹配,若出现timeout等国外安装源获取失败等问题,可考虑使用清华源
5、seL4test代码下载、编译
seL4test这个仓官方文档中以repo方式进行下载同步,涉及代理问题,下载不完整,gitlink中备份了一份完整的代码
编译,以x86 qemu为例
编译完成,在build-x86目录下出现生成可执行文件simulate
执行./simulate即可执行模拟x86架构硬件的运行
参考链接: https://docs.sel4.systems/GettingStarted