-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
doc update: installation on Ubuntu 22 Jammy Jellyfish. #27
Merged
fujitatomoya
merged 3 commits into
Haivision:master
from
fujitatomoya:fujitatomoya/20240116-jammy-support
Jan 22, 2024
Merged
Changes from all commits
Commits
Show all changes
3 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,27 +2,40 @@ | |
|
||
## Requirements / Dependency | ||
|
||
### System | ||
### Supported System | ||
|
||
It could be working the following versions or latter, but not recommended to be used except following specific versions since it does not verify with other versions. | ||
|
||
- Ubuntu: 20.04 Focal Fossa | ||
- [SRT v1.4.0](https://github.com/Haivision/srt/releases/tag/v1.4.0) | ||
- [Ubuntu 20.04 Focal Fossa](https://releases.ubuntu.com/focal/) | ||
- [Ubuntu 22.04 Jammy Jellyfish](https://releases.ubuntu.com/jammy/) | ||
|
||
### Prerequisites | ||
|
||
The following packages are required to install. | ||
The following packages are required to install as common. | ||
|
||
```bash | ||
apt update | ||
apt upgrade -y | ||
apt install -y g++ curl cmake pkg-config libcurl4-openssl-dev build-essential zlib1g-dev git libsrt-dev libyaml-cpp-dev | ||
apt install -y g++ curl cmake pkg-config libcurl4-openssl-dev build-essential zlib1g-dev git libyaml-cpp-dev | ||
``` | ||
|
||
- Ubuntu 20.04 | ||
|
||
```bash | ||
apt install -y libsrt-dev libsrt-doc | ||
``` | ||
|
||
- Ubuntu 22.04 | ||
|
||
```bash | ||
apt install -y libsrt-openssl-dev libsrt-doc | ||
``` | ||
|
||
### Dependent Packages | ||
|
||
- [prometheus-cpp](https://github.com/jupp0r/prometheus-cpp) library | ||
|
||
> [!NOTE] | ||
> `prometheus-cpp` debian package is supported on ubuntu 23 or later. see more details for https://github.com/Haivision/srt-prometheus-exporter/issues/11. | ||
|
||
```bash | ||
git clone https://github.com/jupp0r/prometheus-cpp | ||
cd prometheus-cpp | ||
|
@@ -32,16 +45,18 @@ apt install -y g++ curl cmake pkg-config libcurl4-openssl-dev build-essential zl | |
cd _build | ||
cmake .. -DBUILD_SHARED_LIBS=ON | ||
make -j 4 | ||
sudo make install | ||
make install | ||
``` | ||
|
||
Check if the following libraries are installed as expectedly. | ||
|
||
```bash | ||
ls /usr/local/lib/libprometheus-cpp* | ||
/usr/local/lib/libprometheus-cpp-core.so /usr/local/lib/libprometheus-cpp-pull.so /usr/local/lib/libprometheus-cpp-push.so | ||
/usr/local/lib/libprometheus-cpp-core.so.1.1 /usr/local/lib/libprometheus-cpp-pull.so.1.1 /usr/local/lib/libprometheus-cpp-push.so.1.1 | ||
/usr/local/lib/libprometheus-cpp-core.so.1.1.0 /usr/local/lib/libprometheus-cpp-pull.so.1.1.0 /usr/local/lib/libprometheus-cpp-push.so.1.1.0 | ||
/usr/local/lib/libprometheus-cpp-core.so /usr/local/lib/libprometheus-cpp-pull.so.1.2.0 | ||
/usr/local/lib/libprometheus-cpp-core.so.1.2 /usr/local/lib/libprometheus-cpp-push.so | ||
/usr/local/lib/libprometheus-cpp-core.so.1.2.0 /usr/local/lib/libprometheus-cpp-push.so.1.2 | ||
/usr/local/lib/libprometheus-cpp-pull.so /usr/local/lib/libprometheus-cpp-push.so.1.2.0 | ||
/usr/local/lib/libprometheus-cpp-pull.so.1.2 | ||
``` | ||
|
||
Set `/usr/local/lib` to `LD_LIBRARY_PATH` environmental variable to avoid dynamic link error. | ||
|
@@ -50,18 +65,25 @@ apt install -y g++ curl cmake pkg-config libcurl4-openssl-dev build-essential zl | |
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib | ||
``` | ||
|
||
- SRT library (If necessary) | ||
- SRT library version compatibility | ||
|
||
```bash | ||
dpkg -l | grep libsrt | ||
ii libsrt-doc 1.4.4-4 all Secure Reliable Transport UDP streaming library (documentation) | ||
ii libsrt-openssl-dev:amd64 1.4.4-4 amd64 Secure Reliable Transport UDP streaming library (OpenSSL flavour development) | ||
ii libsrt1.4-openssl:amd64 1.4.4-4 amd64 Secure Reliable Transport UDP streaming library (OpenSSL flavour) | ||
``` | ||
|
||
The stable version can be installed with `apt install libsrt-dev` on `Ubuntu 20.04` version is `v1.4.0`. | ||
**If SRT library is compiled from code, be sure that the code is reset to tag `v1.4.0`. Otherwise, srt_exporter library compiled would not work with installed SRT library on other devices. Make sure that SRT Exporter library is built and running based on the same version of SRT library.** | ||
> [!NOTE] | ||
> **If SRT library is compiled from code, be sure that the code is aligned with tag `v1.4.X`. Otherwise, srt_exporter library would not get successfully compiled with installed SRT library.** | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. having the semantic version control should be able to be compatible with any patch releases. that means, as long as that SRT version is |
||
|
||
### Build and Install | ||
|
||
- Install | ||
|
||
```bash | ||
cd srt-prometheus-exporter | ||
sudo make | ||
make | ||
``` | ||
|
||
`libsrtexp.so` will be compiled and installed to `/usr/local/lib`, and related header files will be installed in `/usr/local/include/srtexp`. | ||
|
@@ -70,5 +92,5 @@ apt install -y g++ curl cmake pkg-config libcurl4-openssl-dev build-essential zl | |
|
||
```bash | ||
cd srt-prometheus-exporter | ||
sudo make clean | ||
make clean | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
unfortunately we still need to build the
prometheus-cpp
client library with ubuntu 22.04.