Construir sigrok-cli de baixado tar.gz vai mal

2

Eu tenho um problema com o sigrok-cli build de .tar.gz.

Ontem eu instalei o metapackage sigrok, que correu bem. Hoje descobri que o pacote 17.04 do ubuntu é incompatível com o DMM que desejo usar. Então, no conselho eu removi, purgou e auto removido sigrok e pulseview e começou "de novo"

Eu baixei o sigrok-cli-0.7.0.tar.gz e descompactei isso na minha pasta pessoal.
Inicialmente eu tentei seguir as instruções no arquivo leia-me sobre como construir, mas acabei não "gitting" e apenas planejei construir por ./configure & amp; fazer & amp; sudo make install.

Mas eu encontrei alguns problemas de dependência, eu precisava:

  1. libsigrok
  2. libsigrokdecode

É claro que, ao construí-los, encontrei algumas outras dependências. desenvolvedor python 3 e libzip-dev. de qualquer maneira eu consegui instalar estes e construir os dois primeiros então eu também consegui construir sigrok-cli por:

  1. Download do arquivo .tar.gz
  2. Descompactá-los lá em separado dir meu home dir
  3. A partir desses diretórios separados I ./configured, make & amp; o sudo faz instalá-los. Mas agora eu acredito que estes acabaram em local errado.

Dependência sábia funcionou, não houve mais problemas, mas quando eu agora tentar executar o sigrok-cli eu recebo a seguinte mensagem de erro:

sigrok-cli: error while loading shared libraries:
libsigrok.so.4: cannot open shared object file: No such file or directory.

Agora eu sei que este arquivo está no ~/libsigrok-0.5.0/.libs/ , então o programa está procurando no lugar errado (ou melhor dizendo, o arquivo está no lugar errado). Agora, pelo que eu aprendi ontem, acredito que o local correto seja em:

  1. ~ / usr / bin
  2. ~ / usr / local / bin.

mas quando olho para essas pastas ~ / bin não encontro outras pastas.

Então talvez libsigrok-0.5.0 e libsigrokdecode-0.5.0 estejam na pasta sigrok-cli-0.7.0. mas mesmo que essas pastas precisem estar em outro local. Não tenho certeza qual seria a maneira correta de levá-los até lá, apenas cortar / passar ou devo desinstalar e reinstalar no diretório correto?

    
por Matthieu Kints van 04.08.2017 / 19:50

2 respostas

2

Parece que uma quantidade considerável de edifício é necessária para chegar ao seu objetivo! O seguinte trabalhou no meu próprio sistema 17.04 e constrói o que eu acredito ser o seu pacote obrigatório :

Requisitos de criação:

Instale-os a partir de um Terminal para instalar todas as dependências necessárias para construir os pacotes com o seguinte comando único :

sudo apt-get install git build-essential make \
autoconf automake libtool checkinstall autoconf-archive \
pkg-config libglib2.0-dev libglibmm-2.4-dev libzip-dev \
libusb-1.0-0-dev libftdi-dev check doxygen python-numpy \
python-dev python-gi-dev python-setuptools swig default-jdk \
libglib2.0-dev python3-dev

Crie uma área de construção:

mkdir $HOME/sigrock_build 

Em seguida, comece a criar:

libserialport

O seguinte é um único comando :

cd $HOME/sigrock_build && \
wget http://sigrok.org/download/source/libserialport/libserialport-0.1.1.tar.gz && \
tar xvf libserialport-0.1.1.tar.gz && \
cd libserialport-0.1.1 && \
./configure && make && \
sudo checkinstall --pakdir "$HOME/sigrock_build" --backup=no --deldoc=yes \
                  --pkgname libserialport --pkgversion "0.1.1" --fstrans=no \
                  --deldesc=yes --delspec=yes --default && \
sudo ldconfig

libsigrock

O seguinte é um único comando :

cd $HOME/sigrock_build && \
wget http://sigrok.org/download/source/libsigrok/libsigrok-0.5.0.tar.gz && \
tar xvf libsigrok-0.5.0.tar.gz && cd libsigrok-0.5.0 && \
./configure && make && \
sudo checkinstall --pakdir "$HOME/sigrock_build" --backup=no --deldoc=yes \
                  --pkgname libsigrock --pkgversion "0.5.0" --fstrans=no \
                  --deldesc=yes --delspec=yes --default && \
sudo ldconfig

libsigrokdecode

O seguinte é um único comando :

cd $HOME/sigrock_build && \
wget http://sigrok.org/download/source/libsigrokdecode/libsigrokdecode-0.5.0.tar.gz && \
tar xvf libsigrokdecode-0.5.0.tar.gz && cd libsigrokdecode-0.5.0 && \
./configure && make && \
sudo checkinstall --pakdir "$HOME/sigrock_build" --backup=no --deldoc=yes \
                  --pkgname libsigrockdecode --pkgversion "0.5.0" --fstrans=no \
                  --deldesc=yes --delspec=yes --default && \
sudo ldconfig

sigrock-cli

O seguinte é um único comando :

cd $HOME/sigrock_build && \
wget http://sigrok.org/download/source/sigrok-cli/sigrok-cli-0.7.0.tar.gz && \
tar xvf sigrok-cli-0.7.0.tar.gz && cd sigrok-cli-0.7.0 && \
./configure && make && \
sudo checkinstall --pakdir "$HOME/sigrock_build" --backup=no --deldoc=yes \
                  --pkgname sigrok-cli --pkgversion "0.7.0" --fstrans=no \
                  --deldesc=yes --delspec=yes --default && \
sudo ldconfig

Resultado final:

No meu sistema 17.04, isso mostra:

andrew@ilium:~$ sigrok-cli --version
sigrok-cli 0.7.0

Libraries and features:
- libsigrok 0.5.0/4:0:0 (rt: 0.5.0/4:0:0).
 - Libs:
  - glib 2.52.0 (rt: 2.52.0/5200:0)
  - libzip 1.1.2
  - libserialport 0.1.1/1:0:1 (rt: 0.1.1/1:0:1)
  - libusb-1.0 1.0.21.11156
  - libftdi 0.20
  - Host: x86_64-pc-linux-gnu, little-endian.
  - SCPI backends: TCP, RPC, serial, USBTMC.
- libsigrokdecode 0.5.0/4:0:0 (rt: 0.5.0/4:0:0).
 - Libs:
  - glib 2.52.0 (rt: 2.52.0/5200:0)
  - Python 3.5.3 / 0x30503f0 (API 1013, ABI 3)
  - Host: x86_64-pc-linux-gnu, little-endian.
andrew@ilium:~$ 

E esperamos que você tenha o mesmo resultado:)

    
por andrew.46 05.08.2017 / 04:06
0

A resposta de Andrew.46 foi extremamente útil (mais do que isso).

Mas nesse meio tempo eu encontrei algumas informações adicionais que eu queria adicionar e preferi não escondê-las em um comentário, então eu decidi adicionar esta resposta, que só adiciona a extensa resposta de andrew.46.

Vou atualizar de acordo com as coisas que eu aprendo ao longo do caminho, na esperança de que outros possam se beneficiar.

1) o ut71 (c) é suportado pelo driver serial-dmm.
2) o libsigrokdecode não é necessário para o uso de dmm (mas duvide que isso também possa prejudicar)
3) Pulseview ainda não é suportado pelo dmm, mas estará no (futuro próximo). 4) em vez disso, pode-se usar sigrok-meter, mas no momento não está pronto para uso diário,
de acordo com os desenvolvedores.

  • link . por favor, importe-se com dependências,

O sigrok-meter pode ser instalado com dependências adequadas com este único comando.

cd $HOME/sigrock_build && \  
sudo -H apt-get install python-qt4 pyqt4-dev-tools python-pip && \  
sudo -H pip install pyqtgraph && \  
git clone git://sigrok.org/sigrok-meter && \  
cd sigrok-meter && \  
./configure && make && \  
sudo checkinstall --pakdir "$HOME/sigrock_build" --backup=no --deldoc=yes \  
                  --pkgname sigrok-meter --fstrans=no \  
                  --deldesc=yes --delspec=yes --default && \  
sudo ldconfig

embora eu não esteja 100% nas linhas "checkinstall", por favor corrija-me se estiver errado!

uma vez instalado, ao usar um cabo usb ut71c e ut-do4, você pode executar o programa:

cd "buildfolder"
./sigrok-meter -d uni-t-ut71c-ser:conn=1a86.e008 --continuous or --frames 5

você está usando um cabo diferente ut-do2 mais r232 para usb, localize o dispositivo usb em questão por: lsusb e substitua 1a86.e008 pelo endereço correto. Além disso, ao usar um dmm diferente: substitua o driver pelo correto. Você pode encontrar todos os drivers compatíveis com

./sigrok-cli -L   

infelizmente, há um problema com a conexão com o dmm no linux, já que o kernel do linux não envia o dispositivo usb para dormir quando não é usado como o kernel do windows faz. Eu tive um problema semelhante antes com o mouse de espaço de conexão 3d em freecad no linux.

para resolver esse problema, há uma solução: execute o script que você encontrará no link abaixo. execute este script toda vez antes de rodar o sigrok-cli.

como fazer isso?
1) crie um arquivo txt (sem extensão, ok acn use .sh se você realmente quiser)
2) copie este script, esteja ciente de todos os recuos corretos. 3) salvar
4) selecione via propriedades para permitir a execução como executável.
5) executado por: sd / location / of / file & amp; & amp; ./filename & amp; & amp; ./sigrok-cli ......

isto deve permitir que você execute o programa com toda a opção desejada.

divirta-se!

mas antes de terminar, quero dar um agradecimento especial a Andrew.46 deste fórum e abraxa e alm do fórum eevblog.

    
por Matthieu Kints van 05.08.2017 / 13:06