Όπως ρωτώ και στο aksubuntu προσπαθώ να στήσω το minitube γιατί το .deb που διανέμει ο προγραμματιστής δεν παίζει και θέλει εξαρτήσεις που δεν διανέμονται στα repos του ubuntu 18.04 συγγεκριμένα θέλει:
- Qt 5.11.0 ενώ παίζει και με Qt > 5.6.0 ενώ τα repos διανέμουν την Qt 5.9.x
- Libmpv v0.29.0 ενώ τα repos δίνουν την v0.27.0
Έτσι σκεύτικα να χτίσω την κατάλληλη έκδοση του libmppv εγκαθιστώντας τις εξαρτήσεις:
sudo apt-get install autoreconf lilfreetype-dev libfribidi-dev libfontconfig-dev yasm
Και να αξιοποιήσω τα εργαλεία που δίνουν οι προγραμματιστές για να κτίσεις την libmpv. Εφόσον τα εγκατέστησα μέσω git εκτέλεσα τις κάτωθι εντολές:
cd mpv-build
echo --enable-libmpv-shared > mpv_options
./use-mpv-custom v0.29.0
./update
./rebuild -j4
sudo ./install
Και εγκατέστησα την βιβλιοθήκη επιτυχώς. Έτσι πλέον θεριτικά μπορώ να κτίσω και να εγκαταστήσω το minitube.
git clone --recursive https://github.com/flaviotordini/minitube.git
sudo apt install build-essential qt5-default qttools5-dev-tools qt5-qmake qtdeclarative5-dev libqt5sql5-sqlite libqt5x11extras5-dev libmpv-dev
#Ensuring that will compile the v3.0
git checkout --branch v3.0 3.0
# Used my own API key
qmake "DEFINES += APP_GOOGLE_API_KEY=YourAPIKeyHere"
make
Αλλά λαμβάνω τα ακόλουθα σφάλματα:
build/obj/mpvwidget.o: In function `MpvWidget::~MpvWidget()':
mpvwidget.cpp:(.text+0x19b): undefined reference to `mpv_render_context_free'
build/obj/mpvwidget.o: In function `non-virtual thunk to MpvWidget::~MpvWidget()':
mpvwidget.cpp:(.text+0x1f7): undefined reference to `mpv_render_context_free'
build/obj/mpvwidget.o: In function `MpvWidget::initializeGL()':
mpvwidget.cpp:(.text+0x399): undefined reference to `mpv_render_context_create'
mpvwidget.cpp:(.text+0x3b9): undefined reference to `mpv_render_context_set_update_callback'
build/obj/mpvwidget.o: In function `MpvWidget::paintGL()':
mpvwidget.cpp:(.text+0x78c): undefined reference to `mpv_render_context_render'
build/obj/mpvwidget.o: In function `MpvWidget::onFrameSwapped()':
mpvwidget.cpp:(.text+0xb5): undefined reference to `mpv_render_context_report_swap'
build/obj/mpvwidget.o: In function `MpvWidget::maybeUpdate()':
mpvwidget.cpp:(.text+0x807): undefined reference to `mpv_render_context_report_swap'
collect2: error: ld returned 1 exit status
Makefile:630: recipe for target 'build/target/minitube' failed
Έχετε ιδέα πως θα προχωρίσω σε επιτυχές build?