# mediasoup 3.9.0 released (GYP replaced with Meson build system)

**URL:** <https://mediasoup.discourse.group/t/mediasoup-3-9-0-released-gyp-replaced-with-meson-build-system/3416>\
**Category:** Announcements\
**Created:** [October 12, 2021, 2:27pm UTC](https://mediasoup.discourse.group/t/mediasoup-3-9-0-released-gyp-replaced-with-meson-build-system/3416 "2021-10-12T14:27:21Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![ibc](https://yyz2.discourse-cdn.com/free1/user_avatar/mediasoup.discourse.group/ibc/32/1540_2.png) [@ibc](https://mediasoup.discourse.group/u/ibc)\
**Post date:** [October 12, 2021, 2:27pm UTC](https://mediasoup.discourse.group/t/mediasoup-3-9-0-released-gyp-replaced-with-meson-build-system/3416/1 "2021-10-12T14:27:21Z")

</div>

Hi, mediasoup 3.9.0 has been released.

Among others, it replaces the deprecated GYP build system with Meson. This is a huge work done by @nazar-pc.

Summary of changes in 3.9.0:

- Replaces GYP build system with fully-functional Meson build system (PR #622).
- Worker communication optimization (aka removing netstring dependency) (PR #644).
- Move TypeScript and compiled JavaScript code to a new node folder.
- Use ES6 private fields.
- Require Node.js version \>= 12.

Please check the new requirements to install mediasoup at [mediasoup :: Installation](https://mediasoup.org/documentation/v3/mediasoup/installation/#requirements).

---

<div class="post-metadata">

**Author:** ![nazar-pc](https://yyz2.discourse-cdn.com/free1/user_avatar/mediasoup.discourse.group/nazar-pc/32/369_2.png) [@nazar-pc](https://mediasoup.discourse.group/u/nazar-pc)\
**Post date:** [October 12, 2021, 6:35pm UTC](https://mediasoup.discourse.group/t/mediasoup-3-9-0-released-gyp-replaced-with-meson-build-system/3416/2 "2021-10-12T18:35:54Z")

</div>

BTW, NPM package is down from 167M to 2.3M and after compiling worker build dependencies are removed, so your `node_modules` should be quite a bit smaller now (think of building smaller container images).

UPD: Actually the compressed package is just 442k worth of data to download.

---

<div class="post-metadata">

**Author:** ![snnz](https://yyz2.discourse-cdn.com/free1/user_avatar/mediasoup.discourse.group/snnz/32/693_2.png) [@snnz](https://mediasoup.discourse.group/u/snnz)\
**Post date:** [October 13, 2021, 12:27pm UTC](https://mediasoup.discourse.group/t/mediasoup-3-9-0-released-gyp-replaced-with-meson-build-system/3416/3 "2021-10-13T12:27:04Z")

</div>

The documentation states that under Windows a folder containing `cl` should be added to the PATH. However, this alone didn’t work for me. The compiler starts all right, but then the linker cannot find the runtime library. A command prompt with some additional variables set is necessary, LIBPATH in particular.

---

<div class="post-metadata">

**Author:** ![nazar-pc](https://yyz2.discourse-cdn.com/free1/user_avatar/mediasoup.discourse.group/nazar-pc/32/369_2.png) [@nazar-pc](https://mediasoup.discourse.group/u/nazar-pc)\
**Post date:** [October 13, 2021, 1:17pm UTC](https://mediasoup.discourse.group/t/mediasoup-3-9-0-released-gyp-replaced-with-meson-build-system/3416/4 "2021-10-13T13:17:09Z")

</div>

I saw a similar problem, but as I am not familiar with native development under Windows, I failed to write it down. Would you be able to make a PR with documentation updates for [GitHub - versatica/mediasoup-website: Website of mediasoup](https://github.com/versatica/mediasoup-website)?

Here is the PR that updated docs: [Updated documentation about required dependencies with Meson upgrade by nazar-pc · Pull Request #34 · versatica/mediasoup-website · GitHub](https://github.com/versatica/mediasoup-website/pull/34)

---

<div class="post-metadata">

**Author:** ![snnz](https://yyz2.discourse-cdn.com/free1/user_avatar/mediasoup.discourse.group/snnz/32/693_2.png) [@snnz](https://mediasoup.discourse.group/u/snnz)\
**Post date:** [October 13, 2021, 3:11pm UTC](https://mediasoup.discourse.group/t/mediasoup-3-9-0-released-gyp-replaced-with-meson-build-system/3416/5 "2021-10-13T15:11:26Z")

</div>

Starting from MSVS 2017 v15.2, there is a tool coming along with the VS installer that gives the paths of various components. For example:

```auto
"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -latest -find VC\Auxiliary\Build\vcvars64.bat

```

and the output (in stdout) will be a path to the `vcvars64.bat` that sets all necessary variables in the current shell (including the path to `cl`). After it is called, there is no need to set up anything manually in the environment. But I am not sure where is the best place to put it. Somewhere in the Makefile? Also this leaves several versions of VS (2015 and 2017 \< v15.2) that probably could be used to build mediasoup’s worker, but lack the `vswhere` tool. So there should be a check that it exists.

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/free1/uploads/mediasoup/original/2X/b/b318c4d3397e65af9535f79c605b80b9ceb066c8.png) [@system](https://mediasoup.discourse.group/u/system)\
**Post date:** [October 14, 2021, 2:27pm UTC](https://mediasoup.discourse.group/t/mediasoup-3-9-0-released-gyp-replaced-with-meson-build-system/3416/6 "2021-10-14T14:27:29Z")

</div>

This topic was automatically closed after 2 days. New replies are no longer allowed.
