Como posso instalar o iBroadcast Media Sync Lite?

1

Background
Meu computador teve um erro grave e não me permitiu recuperar / reinstalar o Windows, então desisti e instalei o Ubuntu 16 para ter um computador em funcionamento.

Eu tenho alguma compreensão do Linux, mas não me considero proficiente o suficiente.

Preciso de um guia passo a passo para instalar um programa, o iBroadcast Media Sync Lite, que quero usar no meu computador. Mas o uso de outros guias não foi totalmente claro ou eu falhei completamente.

O programa que estou tentando instalar está aqui:
https://github.com/iBroadcastMediaServices/MediaSyncLiteLinux

Eu tentei instalar isso, mas até onde eu sei, falhou.

Eu apreciaria qualquer ajuda disponível.

Bellepheron
fonte
A questão não é clara. Quais partes não estão claras? O que falhou exatamente? Quais foram os erros?
Mikewhatever
Publiquei uma resposta que acredito que funcione para você (e para outras pessoas que tentam instalar este programa). Mesmo assim, acho que seria útil editar sua pergunta para fornecer detalhes completos sobre como você tentou instalá-la e exatamente o que aconteceu. Além disso, se você acredita que o problema do seu computador que o impediu de usar o Windows pode ser relevante para a instalação deste software, explique. (Se não, então não é realmente relevante e, provavelmente, pode ser removido da sua pergunta Se você quiser. Ajudar com o problema do Windows, você poderia perguntar sobre isso no Super User .)
Elias Kagan

Respostas:

2

Essas instruções são basicamente baseadas no leia-me oficial , mas com detalhes específicos e uma etapa adicional (etapa III) que eu achei necessária para criar com êxito. Eu testei-os no Ubuntu 16.04 LTS.

I. Instale os pré-requisitos.

Primeiro instale o Git (para baixar o software), as ferramentas para compilar o software e as bibliotecas usadas pelo software:

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

Escolha um local para construir o software. O local tradicional é o /usr/local/srcqual você pode permitir que os administradores (membros do sudogrupo) leiam e gravem arquivos em:

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

Se você estiver construindo em outro lugar, poderá ajustar os seguintes comandos de acordo.

II Faça o download do código fonte.

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

Agora você tem um MediaSyncLiteLinuxdiretório que contém o código fonte. O código fonte inclui dois arquivos chamados Makefile, um no diretório de nível superior e o outro em src. (Na verdade, existem mais do que apenas esses dois, mas é com esses que nos importamos.)

III Corrija o código-fonte para vincular o libcrypto em vez do libssl.

Atualmente, para construir iBroadcast Media Sync Lite no Ubuntu 16.04, é necessário modificar o Makefileno src. Isso ocorre porque ele é vinculado ao libssl, mas precisa do libcrypto . Futuras versões do software (que você, ou futuros leitores, obteria automaticamente, executando o gitcomando acima) não pode exigir isso.

Se você pular esta etapa, atualmente você receberá esse erro durante a makeetapa subsequente (etapa IV). A mensagem de erro parecerá um pouco diferente se você estiver usando a versão de 32 bits do 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

Essa mensagem significa que você deve vincular à libcrypto .

Vá para o srcsubdiretório MediaSyncLiteLinux, faça backup do arquivo e abra o arquivo em um editor de texto. Essas instruções usam o nanoeditor, mas você pode usar o editor de texto que desejar. (Não é um processador de texto - os arquivos devem permanecer em texto sem formatação.)

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

No editor de texto, encontre a linha que diz:

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

Mude libsslpara libcrypto, então agora ele diz:

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

Versões futuras do software podem ter essa linha de outras maneiras. Você só deve fazer essa alteração específica. Por exemplo, se houver outras bibliotecas listadas, não as remova.

Tudo no OpenSSL de que este programa precisa parece ser fornecido libcrypto, mas, em teoria, uma versão futura também pode ser necessária libssl. Nesse caso, você deve receber mensagens de erro sobre isso ao tentar construí-lo - provavelmente mencionando libssl.so, da mesma forma que a mensagem de erro mostrada acima libcrypto.so. Outras bibliotecas necessárias recentemente podem ser indicadas da mesma forma (se você tiver sorte).

Ctrl+ Xsai nanoe você será solicitado a salvar.

IV Crie e instale o software.

Vá para o MediaSyncLiteLinuxdiretório de nível superior criado por git clone. Depois de seguir passo III acima, cd ..vai conseguir isso (porque você estava em MediaSyncLiteLinux/src). Ou você pode executar:

cd /usr/local/src/MediaSyncLiteLinux

Agora, para compilá-lo, execute:

make

Você está executando makeno diretório que contém o nível superior Makefile . Não foi o que você editou, mas ele também será usado automaticamente durante a compilação.

Você verá avisos como warning: ‘gtk_widget_override_color’ is deprecated [-Wdeprecated-declarations]. Está tudo bem. Se houver erros , isso terá que ser investigado. Caso contrário, você pode prosseguir com a instalação:

sudo make install

Isso instalará o iBroadcast Media Sync Lite no Windows /usr/local.

Observe que, embora eu sugira que você o instale, a instalação é realmente opcional. Como o readme diz, você tem a opção de sempre executar o mediasyncliteexecutável que foi criado no MediaSyncLiteLinuxdiretório de nível superior quando você executou make.

V. Execute e veja se funciona.

O mediasynclitecomando foi instalado para /usr/local/bin. Como esse diretório faz parte dos usuários $PATHpor padrão, agora você pode executar esse comando (de qualquer lugar).

mediasynclite

Você provavelmente deve executá-lo a partir do diretório em que mantém sua música. Ao executá-lo, você deverá fazer login na sua conta do iBroadcast. É assim que parece (depois da tela inicial) quando eu a executo:

Captura de tela da caixa de diálogo de login do MediaSync Lite solicitando o endereço de e-mail e a senha para efetuar login no serviço iBroadcast.

Se você optou por não executar sudo make installe deseja executar o executável compilado (de qualquer lugar), você pode executar:

/usr/local/src/MediaSyncLiteLinux/mediasynclite

VI Localizando os arquivos instalados

Um dia você pode querer ou precisar encontrar os arquivos que foram instalados. Quando você executa, sudo make installele informa quais arquivos estão sendo criados. Você pode salvar essas informações.

A partir da versão atual , eles são:

  • O único arquivo executável binário /usr/local/bin/mediasynclite.
  • O /usr/local/share/mediasynclitediretório e seu conteúdo.

Menciono isso principalmente porque, a partir de agora, a desinstalação com sudo make uninstallnão é suportada. Você pode remover os arquivos manualmente para desinstalar. Se desejar, você também pode usar, emcheckinstall vez do sudo make installcomando acima, para facilitar a desinstalação. Ou você pode usá-lo sem instalá-lo, executando o mediasynclitecomando no diretório de origem de nível superior.

Leitura adicional

Embora realmente não forneça informações específicas suficientes para criar esse programa específico, se você não tiver experiência em compilar software a partir do código-fonte, o CompilingEasyHowTo é um recurso útil e pode lhe interessar.

Eliah Kagan
fonte
Agradeço o esforço feito para me ajudar a instalar este programa, no entanto, ainda sou novo no Linux para entender exatamente o que estou fazendo. Meu principal objetivo para fazer isso é fornecer uma nuvem secundária de backup para minha biblioteca de músicas por meio deste serviço. Para ser sincero, tudo o que eu quero é o pacote Deb e eu ficaria feliz em tentar executar essas etapas, mas honestamente parece que estou lendo uma língua estrangeira tentando entender os comandos.
22417 Bellepheron
Levei tempo e esforço para seguir as etapas acima, lentamente, e eventualmente funcionou e consegui fazer o programa funcionar. Isso funcionou, mas não tenho certeza de onde o programa foi depois de concluir o login. Esta é a próxima parte que preciso descobrir.
22417 Bellepheron
@ Beapherpheron Não encontrei um .deb - não acho que seja empacotado. Se você executou a sudo make installetapa, deve haver um mediasyncliteexecutável no /usr/local/bin. De qualquer forma, deve haver um mediasyncliteexecutável no MediaSyncLiteLinuxdiretório que contém o código-fonte (embora, se você executou a sudo make installetapa, sugiro usar o executável instalado). Você o instalou, mas conseguiu mediasynclite: command not foundquando corre mediasynclite? Se assim for, o que echo "$PATH", file /usr/local/bin/mediasynclitee ls -l /usr/local/bin/mediasynclitemostrar?
Elias Kagan
-1

Abra qualquer terminal

Executar comandos abaixo

git clone https://github.com/iBroadcastMediaServices/MediaSyncLiteLinux
cd MediaSyncLiteLinux
make
sudo make install
Darwin Galapagos
fonte
Obrigado por seu esforço na tentativa de ajudar. Eu tentei esse método e não funcionou.
22917 Bellepheron