Connection: via IPv4
Your IP : 18.119.19.205
In English
Categories: LinuxServer

media-proxy-rsをビルド・実行する

media-proxy-rsをビルド・実行する

概要

Rust製のMisskeyメディアプロキシ media-proxy-rs(https://github.com/yojo-art/media-proxy-rs)をビルドして実行する。

前提条件

  • Ubuntu 22.04 LTS
  • 作業ディレクトリ /opt/media-proxy-rs

ビルド手順

# Rust https://rustup.rs/
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# 依存パッケージ
apt-get install -y meson ninja-build pkg-config nasm git
# 作業ディレクトリへ移動
mkdir -p /opt/media-proxy-rs
cd /opt/media-proxy-rs
git clone --recurse-submodules https://github.com/yojo-art/media-proxy-rs .
# ビルド
cargo build --release

ビルドエラーへの対応

error: failed to run `rustc` to learn about target-specific information

Caused by:
  process didn't exit successfully: `/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/bin/rustc - --crate-name ___ --print=file-names '-C link-args=-Wl,-lc' --crate-type bin --crate-type rlib --crate-type dylib --crate-type cdylib --crate-type staticlib --crate-type proc-macro --print=sysroot --print=split-debuginfo --print=crate-name --print=cfg` (exit status: 1)
  --- stderr
  error: unknown codegen option: ` link-args`

.config/cargo.tomlのrustflags=[“-C link-args=-Wl,-lc”]をrustflags=[“-Clink-args=-Wl,-lc”]かrustflags=[“-C”, “link-args=-Wl,-lc”]に修正する

起動

systemd-unit

[Unit]
Description=Misskey Media Proxy Rust

[Service]
Type=simple
ExecStart=/opt/media-proxy-rs/target/release/media-proxy-rs
WorkingDirectory=/opt/media-proxy-rs
TimeoutSec=60
StandardOutput=journal
StandardError=journal
SyslogIdentifier=media-proxy-rs
Restart=always

[Install]
WantedBy=multi-user.target

初回起動時、作業ディレクトリにconfig.jsonが作られるので必要に応じて編集する

This post was last modified on 2024年8月25日 10:57 PM

Share
Published by
おきん(blog)

Recent Posts

中古のM1 Macbook Airを買った話

つい先日、中古のMacbook…

1日 ago

買って良かったもの 10Gtek USB コンソールケーブル Type-C

最近Macbookを買ったので…

3週間 ago

[メモ]NetboxでEntra ID認証(SSO)[編集中]

[メモ]JellyfinでEn…

3か月 ago

ものぐさのためのXbox Game Pass Ultimate更新節約術

ものぐさ節約家のためのXbox…

3か月 ago

[メモ]JellyfinでEntraID認証

概要 メディアサーバーのJel…

8か月 ago

This website uses cookies.