# extension_cli: Allow building without dynamically linking WebRTC \(\#13080\) · gitcafe/zed

[View on GitCafe](https://git.cafe/gitcafe/zed/commit/6319ae0b4a98e0c3eb743942fbba80c68c909287)

Repository: [gitcafe/zed](https://git.cafe/gitcafe/zed)

Visibility: public

Requested revision: 6319ae0b4a98e0c3eb743942fbba80c68c909287

Requested commit: 6319ae0b4a98e0c3eb743942fbba80c68c909287

Commit: 6319ae0b4a98e0c3eb743942fbba80c68c909287

Tree: 7ee1e2002e1864398f8ac08f3590b6405d706feb

Author: Marshall Bowers

Committer: GitHub

## Message

````
extension_cli: Allow building without dynamically linking WebRTC (#13080)

This PR fixes an issue where the `zed-extension` CLI could no longer be
run as a static binary due to the following error:

```
dyld[36964]: Library not loaded: @rpath/WebRTC.framework/WebRTC
  Referenced from: <56332E1D-292E-3F9B-97B9-8A9962D21599> /Users/maxdeviant/projects/zed-extensions/zed-extension
  Reason: no LC_RPATH's found
fish: Job 1, './zed-extension --scratch-dir .…' terminated by signal SIGABRT (Abort)
```

This is the result of the addition of a dependency on `workspace` to the
`extension` crate (and thus, the `extension_cli` crate) in #12360.

Since we don't actually _need_ WebRTC in the extension CLI, we don't
care about dynamically linking it.

To resolve this, a new `no-webrtc` feature has been added to the
`live_kit_client` client crate and threaded through all of the crates
between it and the `extension_cli`.

Enabling the `no-webrtc` feature will prevent linking to the LiveKit
Swift SDK as well as linking the WebRTC framework.

Release Notes:

- N/A
````

## Parents

- [a8bd60233415d9640684b6560d8937cc7ed7c899](https://git.cafe/gitcafe/zed/commit/a8bd60233415d9640684b6560d8937cc7ed7c899?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zed/tree/6319ae0b4a98e0c3eb743942fbba80c68c909287?format=markdown)
