搭建webassembly网页播放器(二)---emcc环境搭建

本文详细讲述了在CenterOS 7环境中安装glibc 2.19版本以支持C++11,并指导读者如何配置emsdk,解决软链接问题。重点在于emsdk的安装步骤和环境变量设置,适合搭建WebAssembly网页播放器的开发者。
摘要由CSDN通过智能技术生成

emcc全称 emscripten,最重要的功能就是让网页js调用c/c++ 成为可能,是我们基于webassembly搭建网页播放器必须依赖的编译工具. emcc官网的搭建教程较为简单,安装过程中最大的麻烦在于,编译依赖的各种库的安装,特别是版本.

视频课程以及源码下载:
https://edu.csdn.net/course/detail/35615

章节列表:

glic依赖库注意事项

emsdk必须依赖glibc,但是glibc的安装需要特别注意,因为版本太多了,这里面还牵扯到第一个Center OS版本的问题.

在第一章说过,我们选择的是Center OS 7的版本,CenterOS7/8的gcc/g++有一个很大的区别:

Center OS 7: 最高支持到c++11
Center OS 8: 最高支持到C++ 14、

大家可以通过指令 : man gcc 查看最大支持到C++几.
在这里插入图片描述
glibc最新版本需要 c++ 14/17 这些高级版本的支持,而我们的Center OS 7的gcc是不支持的,因此我们要选择一个合适的版本或者手动升级gcc

glibc下载地址:http://ftp.gnu.org/gnu/glibc/
这里我们选择的是 2.19版本
在这里插入图片描述

编译:

 wget http://ftp.gnu.org/gnu/glibc/glibc-2.19.tar.gz
 tar -xvf glibc-2.19.tar.gz
 cd glibc-2.19
 mkdir build
 cd build
 ../configure -prefix=/usr/
 make -j12
 sudo make install

编译成功在这里插入图片描述

emsdk安装

官网下载地址:
https://emscripten.org/docs/getting_started/downloads.html

一个注意事项:
第一篇中,我们介绍了如何在构建共享文件夹,但是共享文件夹里面是无法使用软链接的(类似windows的桌面快捷),但是emsdk需要使用软链接的,因此,我们在/mnt/work目录下单独的下载和编译emsdk.

1. 安装python3,cmake,bzlip2,zlib,zlib-devel

yum install python3
yum install cmake
yum install git

注意 python版本一定要是python3,不能是python2,不兼容python2.

格外注意

yum -y install bzip2
yum -y install zlib zlib-devel

因为中途下载的时候,首先会下载压缩文件 wasm.tbz2,然后解压,解压需要用到bzip2

在这里插入图片描述

下载完成后,没有bzip2会报如下的错误:在这里插入图片描述

安装完依赖工具后,开始正式下载:

git clone https://github.com/emscripten-core/emsdk.git
cd emsdk
git pull
./emsdk install latest
./emsdk activate latest
source ./emsdk_env.sh

注意依赖网速,大家慢慢耐心下载即可。

在这里插入图片描述
碰到这种卡着半天不动的情况,就先按ctrl+c终止,然后再下.

emcc -v

如下输出表示安装成功:
在这里插入图片描述

2. 配置emsdk到环境变量

同步环境配置,这样我们就不用每次启动一个终端都来/mnt/work/emsdk 下执行 soruce ./emsdk_env.sh了.

vim /etc/profile,
在这里插入图片描述

使配置的环境变量立即生效:

source /etc/profile.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wh_shentu929

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值