如何安装 iBroadcast Media Sync Lite?

如何安装 iBroadcast Media Sync Lite?

背景
我的计算机出现严重错误,不允许我恢复/重新安装 Windows,因此我放弃了,并安装了 Ubuntu 16 以使计算机可以正常运行。

我对 Linux 有一些了解,但我认为自己还不够熟练。

我需要一份分步指南来安装我想在计算机上使用的程序 iBroadcast Media Sync Lite。但是使用其他指南完全不清楚,或者我完全失败了。

我想要安装的程序在这里:
https://github.com/iBroadcastMediaServices/MediaSyncLiteLinux

我曾尝试安装它,但据我所知,它失败了。

我将非常感激任何能够提供的帮助。

答案1

这些说明大致基于官方自述文件,但包含特定细节和额外步骤(步骤 III),我发现这些步骤对于成功构建是必需的。我已经在 Ubuntu 16.04 LTS 上测试过它们。

I.安装先决条件。

首先安装Git(下载软件)、构建软件的工具以及软件使用的库:

sudo apt update
sudo apt install git build-essential libgtk-3-dev libcurl4-openssl-dev openssl libssl-dev libjansson-dev

选择构建软件的位置。传统位置是/usr/local/src,您可以允许管理员(组成员sudo)在其中读取和写入文件:

sudo chgrp sudo /usr/local/src
sudo chmod g+sw /usr/local/src

如果您在其他地方构建它,那么您可以相应地调整以下命令。

II.下载源代码。

cd /usr/local/src
git clone https://github.com/iBroadcastMediaServices/MediaSyncLiteLinux.git

现在您有一个MediaSyncLiteLinux包含源代码的目录。源代码包含两个名为 的文件Makefile,一个位于顶级目录中,另一个位于 中src。(实际上不止这两个,但这两个是我们关心的。)

III. 修补源代码以链接到 libcrypto 而不是 libssl。

目前,要在 Ubuntu 16.04 中构建 iBroadcast Media Sync Lite,需要修改 中的Makefilesrc这是因为它链接到但需要库加密相反。该软件的未来版本(您或未来的读者可以通过运行git上述命令自动获得)可能不需要这样做。

如果您跳过此步骤,目前您将在后续make步骤(步骤 IV)中收到此错误。如果您使用的是 32 位版本的 Ubuntu,错误消息会略有不同。

/usr/bin/ld: tools.o: undefined reference to symbol 'MD5@@OPENSSL_1.0.0'
//lib/x86_64-linux-gnu/libcrypto.so.1.0.0: error adding symbols: DSO missing from command line

那条信息意味着你必须链接到 libcrypto

转到src的子目录MediaSyncLiteLinux,备份文件,然后在文本编辑器中打开该文件。这些说明使用nano编辑器,但您可以使用任何您喜欢的文本编辑器。(但不是文字处理器——文件必须保持纯文本。)

cd MediaSyncLiteLinux/src
cp Makefile Makefile.orig
nano -w Makefile

在文本编辑器中,找到以下行:

LDFLAGS = `pkg-config --libs gtk+-3.0 libcurl libssl` -ljansson -lpthread -rdynamic

更改libssllibcrypto,因此现在显示为:

LDFLAGS = `pkg-config --libs gtk+-3.0 libcurl libcrypto` -ljansson -lpthread -rdynamic

软件的未来版本可能会使此行在其他方面有所不同。您应该只对此行进行此特定更改。例如,如果列出了其他库,请不要删除它们。

OpenSSL 中此程序所需的所有内容似乎都由 提供libcrypto,但理论上未来版本可能libssl也需要。如果是这样,您在尝试构建它时应该会看到有关此内容的错误消息——可能提到libssl.so,就像上面显示的错误消息提到 一样libcrypto.so。其他新需要的库可能会以类似的方式指示(如果您幸运的话)。

Ctrl+X退出nano,然后系统将提示您保存。

IV. 构建并安装软件。

MediaSyncLiteLinux转到由 创建的顶级目录git clone。按照上面的步骤 III 操作后,cd ..将实现此目的(因为您位于 中MediaSyncLiteLinux/src)。或者您可以运行:

cd /usr/local/src/MediaSyncLiteLinux

现在要构建它,只需运行:

make

您正在运行make包含顶层 Makefile。这不是您编辑的那个,尽管那个也会在构建过程中自动使用。

您将看到类似 的警告warning: ‘gtk_widget_override_color’ is deprecated [-Wdeprecated-declarations]。没关系。如果有错误,那么就必须调查一下。如果没有,那么你可以继续安装它:

sudo make install

这将在 中安装 iBroadcast Media Sync Lite /usr/local

请注意,虽然我建议你安装它,安装实际上是可选的。作为自述文件说,您可以选择始终运行运行时mediasynclite在顶级目录中创建的可执行文件。MediaSyncLiteLinuxmake

V.运行它并查看它是否有效。

mediasynclite命令安装到/usr/local/bin。由于该目录是用户的一部分$PATH默认情况下,您现在可以(从任何地方)运行该命令。

mediasynclite

您可能应该从保存音乐的目录中运行它。运行它时,您必须登录到您的 iBroadcast 帐户。这是我运行它时的样子(初始启动画面之后):

MediaSync Lite 登录对话框的屏幕截图,提示输入电子邮件地址和密码以登录 iBroadcast 服务。

如果您选择不运行sudo make install并且想要运行已编译的可执行文件(从任何地方),您可以运行:

/usr/local/src/MediaSyncLiteLinux/mediasynclite

VI. 查找已安装的文件

您可能有一天想要或需要查找已安装的文件。运行时sudo make install它会告诉您正在创建哪些文件。您可能想要保存该信息。

从当前版本开始, 他们是:

  • 单个二进制可执行文件/usr/local/bin/mediasynclite
  • 目录/usr/local/share/mediasynclite及其内容。

我提到这一点主要是因为,截至目前,sudo make uninstall不支持使用卸载。您可以手动删除文件以进行卸载。如果您愿意,您也可以使用checkinstall而不是sudo make install上面给出的命令,以便于卸载。或者,您也可以在不安装的情况下使用它,方法是mediasynclite在顶级源目录中运行该命令。

进一步阅读

虽然它并没有真正告诉你足够的具体信息来构建这个特定的程序,如果你没有从源代码编译软件的经验,编译EasyHowTo是一种有用的资源,可能会让您感兴趣。

答案2

打开任意终端

运行以下命令

git clone https://github.com/iBroadcastMediaServices/MediaSyncLiteLinux
cd MediaSyncLiteLinux
make
sudo make install

相关内容