Может ли кто-нибудь объяснить следующее?
user@system:~/gexiv2-0.11.0/build$ exiv2 --version
exiv2 0.27.1
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public
License along with this program; if not, write to the Free
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301 USA
user@system:~/gexiv2-0.11.0/build$ meson --prefix=/usr ..
The Meson build system
Version: 0.49.0
Source dir: /home/user/gexiv2-0.11.0
Build dir: /home/user/gexiv2-0.11.0/build
Build type: native build
Project name: gexiv2
Project version: 0.11.0
Native C compiler: cc (gcc 8.3.0 "cc (Ubuntu 8.3.0-6ubuntu1) 8.3.0")
Native C++ compiler: c++ (gcc 8.3.0 "c++ (Ubuntu 8.3.0-6ubuntu1) 8.3.0")
Build machine cpu family: x86_64
Build machine cpu: x86_64
Found pkg-config: /usr/bin/pkg-config (0.29.1)
Found CMake: /usr/bin/cmake (3.13.4)
Dependency exiv2 found: NO (tried pkgconfig)
meson.build:13:0: ERROR: Dependency "exiv2" not found, tried pkgconfig
A full log can be found at /home/user/gexiv2-0.11.0/build/meson-logs/meson-log.txt
учитывая, что exiv2 версии 0.27 не существует для Ubuntu в целом (она останавливается наv0.25).
Я сделал следующее:
- я пошел всайт exiv
- Я взял ссылку на сборку exiv 0.27 для Linux
Я выполнил следующее
wget https://www.exiv2.org/builds/exiv2-0.27.1-Linux64.tar.gz sudo tar xzf exiv2-0.27.1-Linux64.tar.gz -C /usr/local/lib/ sudo nano /etc/environment
добавлен
:/usr/local/lib/exiv2-0.27.1-Linux64/bin
source /etc/environment
- перезагрузил терминал.
и тогда exiv можно будет использовать корректно.
Но мезон не обнаруживает его там во время сборки.
Для ясности: версия пакета gexiv20.10.9поставляемый для Ubuntu 19.04 уступает по крайней мере необходимой мне версии 0.11.0.
решение1
Я нашел ошибку — вы загрузили бинарную версию Exiv2, но на самом деле вам нужна исходная версия с соответствующими заголовками и файлами разработки.
Итак, полные шаги будут следующими:
часть exiv2
sudo apt-get install cmake meson
sudo apt-get build-dep exiv2
cd ~/Downloads
wget https://www.exiv2.org/builds/exiv2-0.27.1-Source.tar.gz
tar -xf exiv2-0.27.1-Source.tar.gz
cd exiv2-0.27.1-Source/
cmake .
make
sudo make install
Проверять:
$ exiv2 --version | head -n1 exiv2 0.27.1
часть gexiv2
sudo apt-get build-dep libgexiv2-dev
cd ~/Downloads
wget http://ftp.gnome.org/pub/GNOME/sources/gexiv2/0.11/gexiv2-0.11.0.tar.xz
tar -xf gexiv2-0.11.0.tar.xz
cd gexiv2-0.11.0/
meson build
cd build
sudo meson install
и так далее.