Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuillaume Desmottes <guillaume.desmottes@collabora.com>2020-11-26 18:07:41 +0300
committerGuillaume Desmottes <guillaume.desmottes@collabora.com>2021-01-04 14:26:45 +0300
commit8bc2e5ebb872612140a986897a78b37d3e52f78e (patch)
treed42da5f971f5c30f1e9deebd17c87c14b4ad96e6 /README.md
parentfc1bae347e51f08d53631ab3319cc490b6a9cca4 (diff)
use cargo-c to produce cdy and static libs
cargo-c will produce a pkg-config file making it easier to statically link plugins. Also add 'static' features for plugins depending on < 1.14 as this is the minimal required version to use static linking because of ABI changes in core.
Diffstat (limited to 'README.md')
-rw-r--r--README.md31
1 files changed, 31 insertions, 0 deletions
diff --git a/README.md b/README.md
index 027629281..7d2b4fadd 100644
--- a/README.md
+++ b/README.md
@@ -68,6 +68,37 @@ You will find the following plugins in this repository:
- `togglerecord`: Element to enable starting and stopping multiple
streams together.
+## Building
+
+gst-plugins-rs relies on [cargo-c](https://github.com/lu-zero/cargo-c/) to
+generate shared and static C libraries. It can be installed using:
+
+```
+$ cargo install cargo-c
+```
+
+Then you can easily build and test a specific plugin:
+
+```
+$ cargo cbuild --manifest-path video/cdg/Cargo.toml
+$ GST_PLUGIN_PATH=$GST_PLUGIN_PATH:target/debug gst-inspect-1.0 cdgdec
+```
+
+The plugin can also be installed system-wide:
+
+```
+$ cargo cbuild --manifest-path video/cdg/Cargo.toml --prefix=/usr
+$ cargo cinstall --manifest-path video/cdg/Cargo.toml --prefix=/usr
+```
+
+This will install the plugin to `/usr/lib/gstreamer-1.0`.
+You can use `--libdir` to pass a custom `lib` directory
+such as `/usr/lib/x86_64-linux-gnu` for example.
+
+Note that you can also just use `cargo` directly to build Rust static libraries
+and shared C libraries. `cargo-c` is mostly useful to build static C libraries
+and generate `pkg-config` files.
+
## LICENSE
gst-plugins-rs and all crates contained in here that are not listed below are