蓝香蕉代码 |【鸿蒙电脑配置基础编译环境】
·
鸿蒙电脑配置基础编译环境
最近摸索了一个在鸿蒙电脑开发的基础环境配置,记录如下
修改~/.zshrc文件,文件内容:
export PATH=$PATH:$HOME/npm/bin:$HOME/.local/bin:$HOME/usr/local/bin
export C_INCLUDE_PATH=$HOME/usr/local/include:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=$HOME/usr/local/include:$CPLUS_INCLUDE_PATH
export LIBRARY_PATH=$HOME/usr/local/lib:/data/service/hnp/magic-cli.org/magic-cli_1.0.0/lib:$LIBRARY_PATH
export LD_LIBRARY_PATH=$HOME/usr/local/lib:/data/service/hnp/magic-cli.org/magic-cli_1.0.0/lib:$LD_LIBRARY_PATH
export DEFAULT_PREFIX=$HOME/usr/local
alias configure='./configure --prefix=$DEFAULT_PREFIX'
alias cmake='cmake -DCMAKE_INSTALL_PREFIX=$DEFAULT_PREFIX'
export AS="llvm-as"
export CC="clang"
export CC_FOR_BUILD="clang"
export CXX="clang++"
export LD="ld.lld"
export STRIP="llvm-strip"
export RANLIB="llvm-ranlib"
export OBJDUMP="llvm-objdump"
export OBJCOPY="llvm-objcopy"
export NM="llvm-nm"
export AR="llvm-ar"
修改后记得source ~/.zshrc生效,也可以重启终端生效
然后创建目录
mkdir -p ~/usr/local
这套环境变量支持大多数C/C++编译场景和安装场景,如我编译了gettext库和命令,首先下载源码和解压
wget https://ftp.gnu.org/pub/gnu/gettext/gettext-0.22.5.tar.xz
tar -xvzf gettext-0.22.5.tar.xz
cd gettext-0.22.5
然后适配gettext的编译框架,配套编译三元组信息
-
build-aux/config.guess
在以下代码后增加鸿蒙适配*:Minix:*:*) GUESS=$UNAME_MACHINE-unknown-minix ;;增加的内容
*:HarmonyOS:*:*) # 识别鸿蒙系统,根据uname -m输出对应三元组 case "$UNAME_MACHINE" in aarch64) # 输出标准三元组:aarch64-unknown-harmonyos + 内核版本 HARMONY_VERSION=`echo "$UNAME_RELEASE" | sed -e 's/HongMeng Kernel //'` GUESS=aarch64-unknown-harmonyos ;; armv7l|arm*) # 兼容32位ARM架构的鸿蒙(可选) GUESS=arm-unknown-harmonyos ;; x86_64) # 兼容x86_64架构的鸿蒙(可选) GUESS=x86_64-unknown-harmonyos ;; *) # 未知架构,保留原始机器名 GUESS=$UNAME_MACHINE-unknown-harmonyos ;; esac;;
-
build-aux/config.sub
在# Decode manufacturer-specific aliases for certain operating systems.以下代码最后新增ohos相关:-harmonyos) os=-ohos ;;
-
libtextstyle/build-aux/config.guess与build-aux/config.guess同理 -
libtextstyle/build-aux/config.sub与build-aux/config.sub同理
然后
- 执行
configure自动执行配置并指定安装目录为~/usr/local - 执行
make完成编译 - 执行
make install完成安装
安装后执行gettext,首次会有弹窗,点击运行即可
更多推荐



所有评论(0)