we harmoyos 论坛

 找回密码
 立即注册
查看: 3233|回复: 1

ubuntu 编译鸿蒙环境脚本 适用于 18.04/20.04/22.04/

[复制链接]
  • TA的每日心情
    开心
    2024-1-19 14:48
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    48

    主题

    77

    帖子

    1007

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    1007
    发表于 2022-6-13 17:36:58 | 显示全部楼层 |阅读模式
    每次配置环境比安装系统更麻烦, 尤其是编译鸿蒙的环境, 各种工具,环境变量,一大堆看着都头疼, 现一个脚本搞定, 亲测在 ubuntu 18.04 LTS 下可行
    可直接命令下载脚本安装, 将持续同步鸿蒙最新版本更新


    wget https://weharmonyos.oss-cn-hangz ... es/sh/compile4oh.sh

    1. #!/bin/bash

    2. #适用于 ubuntu:18.04/20.04/22.04/
    3. #编译鸿蒙安装脚本
    4. #来自鸿蒙研究站  weharmonyos.com

    5. sed -i "s@http://.*archive.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
    6. sed -i "s@http://.*security.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
    7. sed -i "s@http://mirrors.aliyun.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
    8. apt-get update -y
    9. apt-get install -y apt-utils binutils curl bison flex bc build-essential make mtd-utils gcc-arm-linux-gnueabi u-boot-tools python3.8 python3-pip git zip unzip curl wget gcc g++ ruby=1:2.5.1 dosfstools mtools default-jre default-jdk scons python3.8-distutils perl openssl libssl-dev cpio git-lfs m4 ccache zlib1g-dev tar rsync liblz4-tool genext2fs binutils-dev device-tree-compiler e2fsprogs git-core gnupg gnutls-bin gperf lib32ncurses5-dev libffi-dev zlib* libelf-dev libx11-dev libgl1-mesa-dev lib32z1-dev xsltproc x11proto-core-dev libc6-dev-i386 libxml2-dev lib32z-dev libdwarf-dev
    10. apt-get install -y grsync xxd libglib2.0-dev libpixman-1-dev kmod jfsutils reiserfsprogs xfsprogs squashfs-tools  pcmciautils quota ppp libtinfo-dev libtinfo5 libncurses5 libncurses5-dev libncursesw5 libstdc++6 python2.7 gcc-arm-none-eabi
    11. apt-get install -y vim ssh locales
    12. apt-get install -y doxygen
    13. locale-gen "en_US.UTF-8"
    14. rm -rf /bin/sh /usr/bin/python /usr/bin/python3 /usr/bin/python3m
    15. ln -s /bin/bash /bin/sh
    16. ln -s /usr/bin/python3.8 /usr/bin/python3
    17. ln -s /usr/bin/python3.8 /usr/bin/python3m
    18. ln -s /usr/bin/python3.8 /usr/bin/python
    19. curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/bin/repo
    20. chmod +x /usr/bin/repo
    21. pip3 install --trusted-host https://repo.huaweicloud.com -i https://repo.huaweicloud.com/repository/pypi/simple requests setuptools pymongo kconfiglib pycryptodome ecdsa ohos-build pyyaml prompt_toolkit==1.0.14 redis json2html yagmail python-jenkins
    22. pip3 install esdk-obs-python --trusted-host pypi.org
    23. pip3 install six --upgrade --ignore-installed six
    24. mkdir -p /home/tools
    25. mkdir -p /home/tools/gn
    26. wget -P /home/tools https://repo.huaweicloud.com/harmonyos/compiler/clang/10.0.1-62608/linux/llvm.tar.gz
    27. wget -P /home/tools https://repo.huaweicloud.com/harmonyos/compiler/hc-gen/0.65/linux/hc-gen-0.65-linux.tar
    28. wget -P /home/tools https://repo.huaweicloud.com/harmonyos/compiler/gcc_riscv32/7.3.0/linux/gcc_riscv32-linux-7.3.0.tar.gz
    29. wget -P /home/tools https://repo.huaweicloud.com/harmonyos/compiler/ninja/1.9.0/linux/ninja.1.9.0.tar
    30. wget -P /home/tools https://repo.huaweicloud.com/harmonyos/compiler/gn/1717/linux/gn-linux-x86-1717.tar.gz
    31. wget -P /home/tools https://mirrors.huaweicloud.com/nodejs/v14.15.4/node-v14.15.4-linux-x64.tar.xz
    32. wget -P /home/tools https://hm-verify.obs.cn-north-4.myhuaweicloud.com/qemu-5.2.0.tar.xz
    33. tar -xvf /home/tools/llvm.tar.gz -C /home/tools
    34. tar -xvf /home/tools/hc-gen-0.65-linux.tar -C /home/tools
    35. tar -xvf /home/tools/gcc_riscv32-linux-7.3.0.tar.gz -C /home/tools
    36. tar -xvf /home/tools/ninja.1.9.0.tar -C /home/tools
    37. tar -xvf /home/tools/gn-linux-x86-1717.tar.gz -C /home/tools/gn
    38. tar -xJf /home/tools/node-v14.15.4-linux-x64.tar.xz -C /home/tools
    39. cp /home/tools/node-v14.15.4-linux-x64/bin/node /usr/local/bin
    40. ln -s /home/tools/node-v14.15.4-linux-x64/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm
    41. ln -s /home/tools/node-v14.15.4-linux-x64/lib/node_modules/npm/bin/npx-cli.js /usr/local/bin/npx
    42. tar -xJf /home/tools/qemu-5.2.0.tar.xz -C /home/tools
    43. sed -i '$aexport PATH=/home/tools/llvm/bin:$PATH' /root/.bashrc
    44. sed -i '$aexport PATH=/home/tools/hc-gen:$PATH' /root/.bashrc
    45. sed -i '$aexport PATH=/home/tools/gcc_riscv32/bin:$PATH' /root/.bashrc
    46. sed -i '$aexport PATH=/home/tools/ninja:$PATH' /root/.bashrc
    47. sed -i '$aexport PATH=/home/tools/node-v14.15.4-linux-x64/bin:$PATH' /root/.bashrc
    48. sed -i '$aexport PATH=/home/tools/gn:$PATH' /root/.bashrc
    49. sed -i '$aexport PATH=/root/.local/bin:$PATH' /root/.bashrc
    50. export PATH=/home/tools/llvm/bin:$PATH
    51. export PATH=/home/tools/hc-gen:$PATH
    52. export PATH=/home/tools/gcc_riscv32/bin:$PATH
    53. export PATH=/home/tools/ninja:$PATH
    54. export PATH=/home/tools/node-v12.20.0-linux-x64/bin:$PATH
    55. export PATH=/home/tools/gn:$PATH
    56. export PATH=/root/.local/bin:$PATH
    57. cd /home/tools/qemu-5.2.0
    58. mkdir build
    59. cd build
    60. ../configure --target-list=arm-softmmu
    61. make -j
    62. make install
    63. cd /home/openharmony
    64. rm -rf /home/tools/*.tar
    65. rm -rf /home/tools/*.gz
    66. rm -rf /home/tools/*.xz
    67. rm -rf /home/tools/qemu-5.2.0
    68. npm install -g @ohos/hpm-cli --registry https://mirrors.huaweicloud.com/repository/npm/
    复制代码


    一路上没遇到什么困难,linux 和 liteos_a 内核都一次性编译通过 . 见图


    回复

    使用道具 举报

    该用户从未签到

    1

    主题

    2

    帖子

    21

    积分

    新手上路

    Rank: 1

    积分
    21
    发表于 2022-6-17 11:29:49 | 显示全部楼层
    i 不错好东西,省好多事情
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    手机版|小黑屋|we harmonyos 论坛 ( 粤ICP备 2022126345号 )

    GMT+8, 2024-4-29 07:05 , Processed in 0.047588 second(s), 24 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表