Monday, October 1, 2018

command line - Build sigrok-cli from downloaded tar.gz goes wrong


I have a problem with sigrok-cli build from .tar.gz.


Yesterday I installed sigrok metapackage, which went fine. Today I found out that the ubuntu 17.04 package is incompatible with the DMM I wish to use. So on advice I removed, purged and auto removed sigrok and pulseview and started "anew"


I downloaded sigrok-cli-0.7.0.tar.gz and unpacked this in my home folder.
initially I tried to follow the instructions in the readme file on how to build, but ended up not "gitting" and just planned to build by ./configure & make & sudo make install.


But I bumped into some dependency issues, I needed:



  1. libsigrok

  2. libsigrokdecode


Of course upon building these I bumped into some other dependencies.
python 3 developer and libzip-dev. anyway I managed to install these and build the first two so I got to build sigrok-cli too by:



  1. Downloading the .tar.gz file

  2. Unzipping them in there seperate dir my home dir

  3. From these seperate dir's I ./configured, make & sudo make install them. But I now believe these ended up wrong location.


Dependency wise it worked, there were no longer issues, but when I now try to run the sigrok-cli I get the following error message:


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

Now I know this file to be in the ~/libsigrok-0.5.0/.libs/ so the program is looking in the wrong place (or better said the file is in the wrong place). now from what I learned yesterday I believe the correct location to be either in:



  1. ~/usr/bin

  2. ~/usr/local/bin.


but when I look into these ~/bin folders I find no other folders.


So maybe libsigrok-0.5.0 and libsigrokdecode-0.5.0 should be in the folder sigrok-cli-0.7.0. but even if these folders need to be in another location. I'm not sure what the correct manner would be to get them there, just cut / past or should I uninstall and re install on the right directory?



It appears that a considerable amount of building is required to get to your goal! The following worked on my own 17.04 system and builds what I believe are your required packages:


Build Requirements:


Install these from a Terminal to install all of the required dependencies for building the packages with the following single command:


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

Make a build area:


mkdir $HOME/sigrock_build

Then start building:




libserialport


The following is a single command:


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


The following is a single command:


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


The following is a single command:


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


The following is a single command:


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



Final Result:


On my 17.04 system this shows:


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:~$

And hopefully you will have the same result :)


No comments:

Post a Comment

11.10 - Can't boot from USB after installing Ubuntu

I bought a Samsung series 5 notebook and a very strange thing happened: I installed Ubuntu 11.10 from a usb pen drive but when I restarted (...