# wsl环境 ## 1. 安装wsl ubuntu版本必须为18.04。 windows打开powershell 输入以下命令,不要使用cmd ```bahs wsl --install -d Ubuntu-18.04 ``` 安装参考地址:https://learn.microsoft.com/zh-cn/windows/wsl/install ## 2.正常安装928的开发环境,参考指南。 ## 3.修改目录 ### 3.1 交叉编译工具 修改`cmake/ss298.cmake`目录交叉编译工具路径 ```bash SET(CMAKE_C_COMPILER /opt/linux/x86-arm/aarch64-mix210-linux/bin/aarch64-mix210-linux-gcc) SET(CMAKE_CXX_COMPILER /opt/linux/x86-arm/aarch64-mix210-linux/bin/aarch64-mix210-linux-g++) SET(CMAKE_STRIP /opt/linux/x86-arm/aarch64-mix210-linux/bin/aarch64-mix210-linux-strip) ``` ### 3.2 修改`CMakeLists.txt` 把全部的`/home/setups/ss928_framework/` 替换为自己wsl项目目录,比如`/mnt/d/ss928_framework/` ## 4. 把虚拟机中相关目录拷贝wsl中同样的目录下 需要复制的目录为 - /usr/local/lib - /usr/local/local ```text 注意!!!, 注意!!!, 注意!!!, _.--""--._ .' `. / O O \ | \ ^^ / | \ `----' / `. _______ .' //_____\\ (( ____ )) `------' ``` 复制粘贴- `/usr/local/lib`和`/usr/local/local`先打成压缩包,再解压到wsl目录中,直接从虚拟机中复制出来的时候会报错不支持符号链接的主机,无法复制。 压缩并保持符号链接 ```bash cd /usr/local/lib zip -ry ~/lib.zip ./* cd /usr/local/include zip -ry ~/include.zip ./* ``` - -r 这个选项表示递归地处理目录 - -y 保持符合链接 自行放到wsl任意目录,cd进入该目录解压。如需强制覆盖,加上-o参数 ```bash sudo unzip lib.zip -d /usr/local/lib/ sudo unzip include.zip -d /usr/local/include/ ``` # 把板子上相关目录拷贝wsl中同样的目录下 需要复制到目录为 - /lib/aarch64-linux-gnu - /usr/lib/aarch64-linux-gnu ```bash cd /lib/aarch64-linux-gnu zip -ry ~/lib_agnu.zip ./* cd /usr/lib/aarch64-linux-gnu zip -ry ~/usr_lib_agnu.zip ./* ``` 自行放到wsl任意目录,cd进入该目录解压。如需强制覆盖,加上-o参数 ```bash sudo unzip lib_agnu.zip -d /lib/aarch64-linux-gnu/ sudo unzip usr_lib_agnu.zip -d /usr/lib/aarch64-linux-gnu/ ``` # cmake3.24版本 下载地址:https://cmake.org/files/v3.24/cmake-3.24.0-linux-aarch64.tar.gz 解压后的bin目录为可执行文件,自行放到目录中。 # 5.编译 ```bash mkdir build cd build cmake .. make -j(nproc) ``` `build/libss928driver.so`为生成的动态库文件