Emsdk升级到指定版本

查看当前 emsdk版本

进入到 emsdk 目录,执行 emsdk list 查看版本信息。

C:\Users\MG\Desktop\git\emsdk-1.38.30>emsdk list

The *recommended* precompiled SDK download is 2.0.18 (c2ac7520fad29a7937ed60ab6a95b08eb374c7ba).

To install/activate it, use one of:
         latest                  [default (llvm) backend]
         latest-fastcomp         [legacy (fastcomp) backend]

Those are equivalent to installing/activating the following:
         2.0.18
         2.0.18-fastcomp

All recent (non-legacy) installable versions are:
         2.0.18
         2.0.17
         2.0.16
         2.0.15
         2.0.14
         2.0.13
         2.0.12
         2.0.11
         2.0.10
         2.0.9
         2.0.8
         2.0.7
         2.0.6
         2.0.5
         2.0.4
         2.0.3
         2.0.2
         2.0.1
         2.0.0    INSTALLED
         1.40.1
         1.40.0
         1.39.20
         1.39.19
         1.39.18
         1.39.17
         1.39.16
         1.39.15
         1.39.14
         1.39.13
         1.39.12
         1.39.11
         1.39.10
         1.39.9
         1.39.8
         1.39.7
         1.39.6
         1.39.5
         1.39.4
         1.39.3
         1.39.2
         1.39.1
         1.39.0
         1.38.48
         1.38.47
         1.38.46
         1.38.45
         1.38.44
         1.38.43
         1.38.42
         1.38.41
         1.38.40
         1.38.39
         1.38.38
         1.38.37
         1.38.36
         1.38.35
         1.38.34
         1.38.33

The additional following precompiled SDKs are also available for download:
         sdk-releases-upstream-f5c45e60392b82f603e3a8039c62db294fab02d2-64bit
         sdk-releases-upstream-c2ac7520fad29a7937ed60ab6a95b08eb374c7ba-64bit
         sdk-releases-fastcomp-edf24e7233e0def312a08cc8dcec63a461155da1-64bit
         sdk-releases-fastcomp-536568644fd67d53778f6111fdd5f64ad3f4c539-64bit
         sdk-fastcomp-1.38.30-64bit
         sdk-fastcomp-1.38.31-64bit

The following SDKs can be compiled from source:
         sdk-upstream-main-64bit
         sdk-fastcomp-tag-1.38.30-64bit
         sdk-fastcomp-tag-1.38.31-64bit

The following precompiled tool packages are available for download:
           releases-upstream-f5c45e60392b82f603e3a8039c62db294fab02d2-64bit
           releases-upstream-c2ac7520fad29a7937ed60ab6a95b08eb374c7ba-64bit
           releases-fastcomp-edf24e7233e0def312a08cc8dcec63a461155da1-64bit
           releases-fastcomp-536568644fd67d53778f6111fdd5f64ad3f4c539-64bit
           fastcomp-clang-e1.38.30-64bit
           fastcomp-clang-e1.38.31-64bit
    (*)    node-14.15.5-64bit           INSTALLED
    (*)    python-3.9.2-1-64bit         INSTALLED
    (*)    java-8.152-64bit             INSTALLED
           emscripten-1.38.30
           emscripten-1.38.31
           gnu-2.5.4
           mingw-7.1.0-64bit

The following tools can be compiled from source:
           llvm-git-main-32bit
           llvm-git-main-64bit
           clang-tag-e1.38.30-32bit
           clang-tag-e1.38.31-32bit
           fastcomp-clang-tag-e1.38.30-64bit
           fastcomp-clang-tag-e1.38.31-64bit
           fastcomp-clang-master-32bit
           fastcomp-clang-master-64bit
           emscripten-tag-1.38.30-32bit
           emscripten-tag-1.38.31-32bit
           emscripten-tag-1.38.30-64bit
           emscripten-tag-1.38.31-64bit
           binaryen-tag-1.38.30-32bit
           binaryen-tag-1.38.31-32bit
           binaryen-tag-1.38.30-64bit
           binaryen-tag-1.38.31-64bit
           emscripten-main-32bit
           emscripten-main-64bit
           binaryen-main-32bit
           binaryen-main-64bit
           ninja-git-release-64bit
           ccache-git-emscripten-64bit

Items marked with * are activated for the current user.
Items marked with (*) are selected for use, but your current shell environment is not configured to use them. Type "emsdk_env.bat" to set up your current shell to use them, or call "emsdk activate --permanent <name_of_sdk>" to permanently activate them.

To access the historical archived versions, type 'emsdk list --old'

Run "git pull" to pull in the latest list.

C:\Users\MG\Desktop\git\emsdk-1.38.30>

从github安装指定版emsdk

C:\Users\MG\Desktop\git>git clone https://github.com/emscripten-core/emsdk.git
Cloning into 'emsdk'...
remote: Enumerating objects: 3281, done.
remote: Counting objects: 100% (11/11), done.
remote: Compressing objects: 100% (11/11), done.
remote: Total 3281 (delta 2), reused 1 (delta 0), pack-reused 3270
Receiving objects: 100% (3281/3281), 1.90 MiB | 220.00 KiB/s, done.
Resolving deltas: 100% (2138/2138), done.

C:\Users\MG\Desktop\git>cd emsdk
C:\Users\MG\Desktop\git\emsdk>emsdk install 3.1.10
Resolving SDK version '3.1.10' to 'sdk-releases-upstream-8bd05c7221b4ce34d4bedec40b672d94e681a765-64bit'
Installing SDK 'sdk-releases-upstream-8bd05c7221b4ce34d4bedec40b672d94e681a765-64bit'..
Installing tool 'node-14.18.2-64bit'..
Downloading: C:/Users/MG/Desktop/git/emsdk/zips/node-v14.18.2-win-x64.zip from https://storage.googleapis.com/webassembly/emscripten-releases-builds/deps/node-v14.18.2-win-x64.zip, 30570907 Bytes
Unpacking 'C:/Users/MG/Desktop/git/emsdk/zips/node-v14.18.2-win-x64.zip' to 'C:/Users/MG/Desktop/git/emsdk/node/14.18.2_64bit'
Done installing tool 'node-14.18.2-64bit'.
Installing tool 'python-3.9.2-nuget-64bit'..
Downloading: C:/Users/MG/Desktop/git/emsdk/zips/python-3.9.2-4-amd64+pywin32.zip from https://storage.googleapis.com/webassembly/emscripten-releases-builds/deps/python-3.9.2-4-amd64+pywin32.zip, 14413267 Bytes
Unpacking 'C:/Users/MG/Desktop/git/emsdk/zips/python-3.9.2-4-amd64+pywin32.zip' to 'C:/Users/MG/Desktop/git/emsdk/python/3.9.2-nuget_64bit'
Done installing tool 'python-3.9.2-nuget-64bit'.
Installing tool 'java-8.152-64bit'..
Downloading: C:/Users/MG/Desktop/git/emsdk/zips/portable_jre_8_update_152_64bit.zip from https://storage.googleapis.com/webassembly/emscripten-releases-builds/deps/portable_jre_8_update_152_64bit.zip, 69241499 Bytes
Unpacking 'C:/Users/MG/Desktop/git/emsdk/zips/portable_jre_8_update_152_64bit.zip' to 'C:/Users/MG/Desktop/git/emsdk/java/8.152_64bit'
Done installing tool 'java-8.152-64bit'.
Installing tool 'releases-upstream-8bd05c7221b4ce34d4bedec40b672d94e681a765-64bit'..
Downloading: C:/Users/MG/Desktop/git/emsdk/zips/8bd05c7221b4ce34d4bedec40b672d94e681a765-wasm-binaries.zip from https://storage.googleapis.com/webassembly/emscripten-releases-builds/win/8bd05c7221b4ce34d4bedec40b672d94e681a765/wasm-binaries.zip, 412938927 Bytes
Unpacking 'C:/Users/MG/Desktop/git/emsdk/zips/8bd05c7221b4ce34d4bedec40b672d94e681a765-wasm-binaries.zip' to 'C:/Users/MG/Desktop/git/emsdk/upstream'
Done installing tool 'releases-upstream-8bd05c7221b4ce34d4bedec40b672d94e681a765-64bit'.
Done installing SDK 'sdk-releases-upstream-8bd05c7221b4ce34d4bedec40b672d94e681a765-64bit'.

C:\Users\MG\Desktop\git\emsdk>

激活emsdk,如【3.1.10】

emsdk activate 3.1.10
C:\Users\MG\Desktop\git\emsdk>emsdk activate 3.1.10
Resolving SDK version '3.1.10' to 'sdk-releases-upstream-8bd05c7221b4ce34d4bedec40b672d94e681a765-64bit'
Setting the following tools as active:
   node-14.18.2-64bit
   python-3.9.2-nuget-64bit
   java-8.152-64bit
   releases-upstream-8bd05c7221b4ce34d4bedec40b672d94e681a765-64bit

Adding directories to PATH:
PATH += C:\Users\MG\Desktop\git\emsdk
PATH += C:\Users\MG\Desktop\git\emsdk\node\14.18.2_64bit\bin

Setting environment variables:
PATH = C:\Users\MG\Desktop\git\emsdk;C:\Users\MG\Desktop\git\emsdk\node\14.18.2_64bit\bin;C:\Users\MG\Desktop\git\emsdk\upstream\emscripten;C:\Program Files\Java\jdk1.8.0_321\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files\PuTTY\;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files\MySQL\MySQL Server 5.5\bin;C:\Program Files\OpenVPN\bin;C:\Program Files\MySQL\MySQL Server 5.7\bin;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Git\cmd;C:\Go\bin;C:\Users\MG\Desktop\gRPC+protoBuf+CMake\cmake-3.17.2-win64-x64\cmake-3.17.2-win64-x64\bin;C:\SVN\kvnkcloudsrc\nkcldrun\dll;C:\cppunit\lib;C:\SVN\kvnkcloudsrc\nkcldrun\bin;C:\CMake3.15.5\bin;C:\strawberry\c\bin;C:\strawberry\perl\site\bin;C:\strawberry\perl\bin;C:\Python37\scripts;C:\nasm-2.15;C:\SVN\kvnkcloudsrc\nkcld3\grpc\windows\dll;C:\Python37;C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.20.27508\bin\Hostx64\x64;C:\Program Files\Pandoc\;C:\wabt\bin;C:\SVN\kvnkcloudsrc\nkcldrun\sysdll\Qt\msvc2017_64\bin;C:\SVN\kvnkcloudsrc\nkcldrun\sysdll\Qt\msvc2017_64\lib;C:\SVN\kvnkcloudsrc\nkcldrun\sysdll;C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\;C:\NK6000\NK6000EN_L7\dll;C:\NK6000\NK6000EN_L7\bin;C:\ProgramData\chocolatey\bin;C:\NK6000\NK6000EN_L7\sysdll;C:\BCGSoft\Bin;C:\Program Files\Cppcheck;C:\SVN\kvnkcloudsrc\nkcld3\openssl\bin;C:\Users\MG\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\CVSNT\;;C:\Users\MG\AppData\Local\Programs\Microsoft VS Code\bin;C:\PyCharm\bin;C:\PyCharm Community Edition\bin;C:\Users\MG\AppData\Local\Pandoc\
EMSDK = C:/Users/MG/Desktop/git/emsdk
EM_CONFIG = C:\Users\MG\Desktop\git\emsdk\.emscripten
EMSDK_NODE = C:\Users\MG\Desktop\git\emsdk\node\14.18.2_64bit\bin\node.exe
EMSDK_PYTHON = C:\Users\MG\Desktop\git\emsdk\python\3.9.2-nuget_64bit\python.exe
JAVA_HOME = C:\Users\MG\Desktop\git\emsdk\java\8.152_64bit
Clearing existing environment variable: EMSDK_PY
The changes made to environment variables only apply to the currently running shell instance. Use the 'emsdk_env.bat' to re-enter this environment later, or if you'd like to register this environment permanently, rerun this command with the option --permanent.

C:\Users\MG\Desktop\git\emsdk>

查看emcc版本

emcc -v
C:\Users\MG\Desktop>emcc -v
emcc (Emscripten gcc/clang-like replacement + linker emulating GNU ld) 3.1.10 (c3fe57af0504fe24fc4ba697feb8c204f3c80022)
clang version 15.0.0 (https://github.com/llvm/llvm-project 8bc29d14273b05b05d5a56e34c07948dc2c770d3)
Target: wasm32-unknown-emscripten
Thread model: posix
InstalledDir: C:\Users\MG\Desktop\git\emsdk\upstream\bin

C:\Users\MG\Desktop>

验证升级后的emsdk

创建 hello.cc 文件:

#include <iostream>

int main()
{
    std::cout <<"Hello World!" << std::endl;
}

编译hello.cc工程:

emcc hello.cc -o hello.html

生成如下文件:

hello.cc  hello.html  hello.js  hello.wasm

运行程序:

emrun --no_browser --port:8090 hello.html

打开浏览器,输入: http://127.0.0.1:8090 回车,并选择 hello.html 文件即可。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值