Ubuntu 20.04 X86成功编译运行wayland、wayland-protocols、weston,亲测有效,踩了很多坑,完美解决。
编译前期准备:
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,亲测有效,踩了很多坑,完美解决。相关推荐
- 【从零开始学习SLAM】Ubuntu 20.04系统下编译运行视觉SLAM十四讲代码
文章目录 下载代码 slambook ch2 slambook2 ch2 slambook ch3 useEigen slambook2 ch3 useEigen slambook ch3 useGe ...
- Ubuntu 20.04 源码编译Paddle2.2.2
做研发,总是要不停装新机器和新系统.今天尝试了一下编译Paddle2.2.2. 先说结果: (1)Ubuntu20.04 + Python3.8.10 + gcc-8 (2)cuda和cudnn的版本 ...
- VMWare中Ubuntu 20.04.3 LTS编译、安装FFmpeg
记:准备入坑FFmpeg了,之前在Windows平台尝试编译FFmpeg源码,屡次失败,准备先在Ubuntu环境编译进行学习,之后再尝试在Windows环境下编译源码. 一.准备 Ubuntu 20. ...
- ubuntu 18.04 三五分钟即可一键安装ROS系统(亲测有效)
一:一键安装(推荐,三五分钟即可装好) 1.系统换源(如果换过了就不需要这一步) 打开软件和更新弹窗 在Ubuntu软件这里点击右边红色框,选择其他站点 测试完之后选择服务器就行,点击关闭就行. 最后 ...
- [Android 编译(一)] Ubuntu 16.04 LTS 成功编译 Android 6.0 源码教程
1 前言 经过3天奋战,终于在Ubuntu 16.04上把Android 6.0的源码编译出来了,各种配置,各种error,各种爬坑,特写此博客记录爬坑经历.先上图,Ubuntu上编译完后成功运行模拟 ...
- ROCm 5.4.3 在 ubuntu 20.04 上安装并运行示例
0. 官方说明: AMD Documentation - Portal AMD Documentation - Portal 按照官方文档,操作到底: prerequisite 中也有操作: 显卡类型 ...
- 阿木实验室 ubuntu 20.04 Prometheus 系统 编译问题
1. ./compile_detection.sh error: make[2]: *** [CMakeFiles/darknet_ros_lib.dir/build.make:2017:CMakeF ...
- 【ORB_SLAM3源码解读】Ubuntu 16.04系统下编译运行 ORB_SLAM3
补充一下,这篇教程编译的是最开始ORB_SLAM3开源的代码版本,现在直接下载的是最新的版本,所以报错会不太一样,不过还是有参考价值的. 官方代码地址 https://github.com/UZ-SL ...
- ubuntu 20.04 源码编译 cmake
sudo apt install cmake 无法安装最新的cmake,只能从源码编译 可能会缺下面这个包,先安装下 sudo apt install libssl-dev 完了参考下面的链接即可 h ...
最新文章
- Nginx之反向代理与负载均衡实现动静分离实战
- 优秀交互设计的 UI 原则
- javascript之基本概念
- 智能门锁中CPU卡加密
- jQuery ajax - getScript() 方法
- vue.js 默认选中select_vue.js 解决v-model让select默认选中不生效的问题
- SAP BTP 平台 CloudFoundry 环境下编程概述
- Django REST framework API 指南(19):内容协商
- MOE 分子动力学模拟操作
- 备考分享!第十一届CDA考试Level Ⅱ 优秀考生采访
- 目标检测结果IOU不同取值的意义(0.5:0.95等)
- Data Structure - Quadratic Probing Hash Table (Java)
- C6678信号处理板学习资料:基于6U VPX TMS320C6678+XC7K325T 的信号处理板
- 年度规划复盘及一些收获
- 了解如何定义定义变量和调用函数
- 领悟《信号与系统》之 信号与系统的描述-下节
- Git_GitHub——基本操作、创建远程库、远程库操作、团队协作、SSH免密登录
- 1、Anaconda安装TensorFlow(一)
- VS验证码随机生成和字数控制
- 用js弹出对话框的一些实用方法
热门文章
- elasticsearch-es search 查询
- 怎么用命令远程重启服务器,使用命令行重启Windows服务器的方法
- Android磁盘管理-之vold源码分析(2)
- 【研一小白的白话理解】pytorch-CycleGAN-and-pix2pix
- Linux下压缩的压缩命令
- 关于单精度浮点型精确位数7~8以及双精度浮点型精确位数15~16的解释
- GBK,UTF8是什么?
- uclinux系统简介
- 【Latex】【插入图片】如何在latex中插入并列图片
- 如何让服务端同时支持WebSocket和SSL加密的WebSocket(即同时支持ws和wss)?