编译前期准备:

1、更换国内源:

#添加阿里源
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
#添加清华源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse multiverse

2、安装依赖:

sudo apt update

sudo apt install python3-pip git ninja-build cmake

sudo apt install meson

sudo apt install g++
pip3 install --user meson
sudo apt install -y libffi-dev libxml2-dev graphviz doxygen xsltproc xmlto

sudo apt-get install libgstreamer-plugins-base1.0-dev
sudo apt-get install libmount-dev
sudo apt-get install libexpat1-dev
sudo apt-get install -y libpipewire-0.2 libgstreamer1.0 libcolord-dev liblcms2-dev libva-dev libsystemd-dev libwebp-dev libjpeg-dev
sudo apt-get install libxkbcommon-x11-dev
sudo apt-get install libpixman-1-dev
sudo apt install libinput-tools xdotool
sudo apt install libinput-dev
sudo apt install libdrm-dev
sudo apt install libcairo-dev
sudo apt install libdbus-1-dev
sudo apt-get install libpam0g-dev
sudo apt-get install libgbm-dev
sudo apt-get install libfreerdp2-dev
sudo apt-get install libxcb-composite0-dev
sudo apt-get install libxcursor-dev
sudo apt-get install libcairo2-dev libpango1.0-dev

3、安装ninja

git clone https://gitee.com/rogerbowu/ninja.git
cd ninja
./configure.py --bootstrap   
cp ./ninja  /usr/bin/

4、配置环境

//安装在某路径下,不安装在系统中,方便引用开发。
export WLD=$HOME/install   
export LD_LIBRARY_PATH=$WLD/lib
export PKG_CONFIG_PATH=$WLD/lib/pkgconfig/:$WLD/share/pkgconfig/
export PATH=$WLD/bin:$PATH

5、默认Ubuntu20.04的cmake是3.16.3,升级到3.17.0即可;

sudo wget https://cmake.org/files/v3.17/cmake-3.17.0-Linux-x86_64.tar.gz
tar -zvxf cmake-3.17.0-Linux-x86_64.tar.gz
sudo mv cmake-3.17.0-Linux-x86_64 /opt/cmake-3.17.0
sudo ln -sf /opt/cmake-3.17.0/bin/* /usr/bin/
cmake --version

6、下载wayland源码,编译

git clone https://gitee.com/ccyin/wayland.git
cd wayland
meson build/ --prefix=$WLD
ninja -C build/ install

7、下载wayland-protocols源码编译

git clone https://gitee.com/openeuler-graphics/wayland-protocols.git
cd wayland-protocols
meson build/ --prefix=$WLD
ninja -C build/ install

8、下载weston源码编译

git clone https://gitee.com/mirrors/weston.git
cd weston

git checkout remotes/origin/master
meson build/ --prefix=$WLD
ninja -C build/ install

9、运行:

export LD_LIBRARY_PATH=/root/install/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH 
export XDG_RUNTIME_DIR=/usr/lib/

cd /root/install/bin
./weston

Ubuntu 20.04 X86成功编译运行wayland、wayland-protocols、weston,亲测有效,踩了很多坑,完美解决。相关推荐

  1. 【从零开始学习SLAM】Ubuntu 20.04系统下编译运行视觉SLAM十四讲代码

    文章目录 下载代码 slambook ch2 slambook2 ch2 slambook ch3 useEigen slambook2 ch3 useEigen slambook ch3 useGe ...

  2. Ubuntu 20.04 源码编译Paddle2.2.2

    做研发,总是要不停装新机器和新系统.今天尝试了一下编译Paddle2.2.2. 先说结果: (1)Ubuntu20.04 + Python3.8.10 + gcc-8 (2)cuda和cudnn的版本 ...

  3. VMWare中Ubuntu 20.04.3 LTS编译、安装FFmpeg

    记:准备入坑FFmpeg了,之前在Windows平台尝试编译FFmpeg源码,屡次失败,准备先在Ubuntu环境编译进行学习,之后再尝试在Windows环境下编译源码. 一.准备 Ubuntu 20. ...

  4. ubuntu 18.04 三五分钟即可一键安装ROS系统(亲测有效)

    一:一键安装(推荐,三五分钟即可装好) 1.系统换源(如果换过了就不需要这一步) 打开软件和更新弹窗 在Ubuntu软件这里点击右边红色框,选择其他站点 测试完之后选择服务器就行,点击关闭就行. 最后 ...

  5. [Android 编译(一)] Ubuntu 16.04 LTS 成功编译 Android 6.0 源码教程

    1 前言 经过3天奋战,终于在Ubuntu 16.04上把Android 6.0的源码编译出来了,各种配置,各种error,各种爬坑,特写此博客记录爬坑经历.先上图,Ubuntu上编译完后成功运行模拟 ...

  6. ROCm 5.4.3 在 ubuntu 20.04 上安装并运行示例

    0. 官方说明: AMD Documentation - Portal AMD Documentation - Portal 按照官方文档,操作到底: prerequisite 中也有操作: 显卡类型 ...

  7. 阿木实验室 ubuntu 20.04 Prometheus 系统 编译问题

    1. ./compile_detection.sh error: make[2]: *** [CMakeFiles/darknet_ros_lib.dir/build.make:2017:CMakeF ...

  8. 【ORB_SLAM3源码解读】Ubuntu 16.04系统下编译运行 ORB_SLAM3

    补充一下,这篇教程编译的是最开始ORB_SLAM3开源的代码版本,现在直接下载的是最新的版本,所以报错会不太一样,不过还是有参考价值的. 官方代码地址 https://github.com/UZ-SL ...

  9. ubuntu 20.04 源码编译 cmake

    sudo apt install cmake 无法安装最新的cmake,只能从源码编译 可能会缺下面这个包,先安装下 sudo apt install libssl-dev 完了参考下面的链接即可 h ...

最新文章

  1. Nginx之反向代理与负载均衡实现动静分离实战
  2. 优秀交互设计的 UI 原则
  3. javascript之基本概念
  4. 智能门锁中CPU卡加密
  5. jQuery ajax - getScript() 方法
  6. vue.js 默认选中select_vue.js 解决v-model让select默认选中不生效的问题
  7. SAP BTP 平台 CloudFoundry 环境下编程概述
  8. Django REST framework API 指南(19):内容协商
  9. MOE 分子动力学模拟操作
  10. 备考分享!第十一届CDA考试Level Ⅱ 优秀考生采访
  11. 目标检测结果IOU不同取值的意义(0.5:0.95等)
  12. Data Structure - Quadratic Probing Hash Table (Java)
  13. C6678信号处理板学习资料:基于6U VPX TMS320C6678+XC7K325T 的信号处理板
  14. 年度规划复盘及一些收获
  15. 了解如何定义定义变量和调用函数
  16. 领悟《信号与系统》之 信号与系统的描述-下节
  17. Git_GitHub——基本操作、创建远程库、远程库操作、团队协作、SSH免密登录
  18. 1、Anaconda安装TensorFlow(一)
  19. VS验证码随机生成和字数控制
  20. 用js弹出对话框的一些实用方法

热门文章

  1. elasticsearch-es search 查询
  2. 怎么用命令远程重启服务器,使用命令行重启Windows服务器的方法
  3. Android磁盘管理-之vold源码分析(2)
  4. 【研一小白的白话理解】pytorch-CycleGAN-and-pix2pix
  5. Linux下压缩的压缩命令
  6. 关于单精度浮点型精确位数7~8以及双精度浮点型精确位数15~16的解释
  7. GBK,UTF8是什么?
  8. uclinux系统简介
  9. 【Latex】【插入图片】如何在latex中插入并列图片
  10. 如何让服务端同时支持WebSocket和SSL加密的WebSocket(即同时支持ws和wss)?