本文主要是介绍移植cJSON到SylixOS上,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
为了方便将第三方软件移植到 SylixOS 上,除了直接使用 RealEvo-IDE 工程构建外,对于复杂项目,采用其原有构建方式更为简洁高效。因为cJSON支持CMake编译,所以这里介绍 CMake 构建环境的搭建、MSYS2交叉编译环境 搭建和cJSON移植。
一、MSYS2环境搭建
下载地址:https://repo.msys2.org/distrib/x86_64/
MSYS2 是一个完整的软件分发平台,旨在为 Windows 用户提供一个现代化的开发环境,使用户能够轻松地使用类似于 Unix/Linux 的工具和库进行开发。
1、安装MSYS2
2、配置MSYS2环境变量
2.1、打开 msys2 安装目录,找到 msys2.ini
文件
打开msys2.ini文件,修改MSYS2_PATH_TYPE=inherit,如图所示,把注释打开并保存文件。
2.2、双击目录下的 msys2.exe,启动 msys2 程序。
在$的后面输入echo $PATH命令,查看环境变量是否生效。如果出现类似下图所示,则说明环境变量配置完成。
3、配置 MSYS2 软件源为国内源
3.1、进入 msys2 安装目录 etc\pacman.d 下
找到 mirrorlist.msys、mirrorlist.mingw64、mirrorlist.mingw32 三个文件,将下列代码块中的所有内容,分别复制到对应文件中并保存。注意是追加。
- mirrorlist.msys
#### MSYS2 repository mirrorlist##
## Primary## msys2.org
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/msys/$arch
Server = http://mirrors.ustc.edu.cn/msys2/msys/$arch/
Server = http://repo.msys2.org/msys/$arch
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MSYS2/$arch
Server = http://www2.futureware.at/~nickoe/msys2-mirror/msys/$arch/
- mirrorlist.mingw64
#### 64-bit Mingw-w64 repository mirrorlist##
## Primary## msys2.org
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/x86_64
Server = http://mirrors.ustc.edu.cn/msys2/mingw/x86_64/
Server = http://repo.msys2.org/mingw/x86_64
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/x86_64
Server = http://www2.futureware.at/~nickoe/msys2-mirror/x86_64/
Server = http://mirror.bit.edu.cn/msys2/REPOS/
- mirrorlist.mingw32
#### 32-bit Mingw-w64 repository mirrorlist##
## Primary## msys2.org
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/i686
Server = http://mirrors.ustc.edu.cn/msys2/mingw/i686/
Server = http://repo.msys2.org/mingw/i686
Server = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/i686
Server = http://www2.futureware.at/~nickoe/msys2-mirror/i686/
3.2、在 MSYS2 终端输入 pacman -Sy 命令,出现以下界面表示配置源可用
3.3、确定源可用之后,在 MSYS2 终端输入 pacman -Su 命令,更新核心软件
4、安装编译相关环境
4.1、在 MSYS2 终端输入以下命令安装编译相关环境
pacman -S mingw-w64-x86_64-toolchain mingw-w64-i686-toolchain base-devel gcc make base-devel
遇到询问全部按默认安装(default),时间比较长。
二、CMake 环境搭建
1、安装CMake
1.1、下载 CMake
进入 cmake 下载网站,Download CMake,找到以 msi
为拓展名的软件包镜像并下载
1.2、下载完成后,双击软件包安装
安装路径最好自定义,方便后面查找。所有选择完成之后,一直点 NEXT,直到安装完成。
2、配置 CMake
安装 CMake 后,还需要对 CMake 进行配置,以便 CMake 可支持 SylixOS。
添加文件之前,需要先打开文件的拓展名显示,因为添加的文件会涉及修改文件拓展名。
2.1、找到 cmake 安装目录下的 share/cmake-3.xx/Modules/Platform 文件夹
在该文件夹下创建 SylixOS.cmake、SylixOS-GNU.cmake、SylixOS-GNU-C.cmake、SylixOS-GNU-CXX.cmake、SylixOS-GNU-Fortran.cmake 总共 5 个文件。
将下列代码块内容,分别复制到对应文件中,并保存。
- SylixOS.cmake
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.# support for SylixOS https://www.sylixos.com/# Guard against multiple inclusion, which e.g. leads to multiple calls to add_definition()
if(__SYLIXOS_CMAKE_INCLUDED)return()
endif()
set(__SYLIXOS_CMAKE_INCLUDED TRUE)set(CMAKE_SHARED_LIBRARY_C_FLAGS "&
这篇关于移植cJSON到SylixOS上的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!