Home › Fora › Forum wsparcia › Oprogramowanie › [SOLVED] Instalacja Kadu i błąd z pakietem injeqt
- This topic has 11 odpowiedzi, 2 uczestników, and was last updated 6 years, 9 months temu by ddd.
- AutorPosty
- 30 stycznia 2018 o 19:43 #6657dddForumowicz
Witam, mam problem z instalacją Kadu poniżej CTRL-C z przebiegu instalacji:
Przygotowanie... Budowanie injeqt... Cloning into 'injeqt'... remote: Counting objects: 4, done. remote: Compressing objects: 100% (4/4), done. remote: Total 4 (delta 0), reused 0 (delta 0) Unpacking objects: 100% (4/4), done. ==> Tworzenie pakietu: injeqt 1.1.0-1 (wto, 30 sty 2018, 18:40:38 CET) ==> Sprawdzanie zależności potrzebnych do uruchomienia... ==> Sprawdzanie zależności potrzebnych do budowy... ==> Pobieranie źródeł... -> Pobieranie injeqt-1.1.0.tar.gz... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 119 0 119 0 0 170 0 --:--:-- --:--:-- --:--:-- 169 100 74112 0 74112 0 0 41706 0 --:--:-- 0:00:01 --:--:-- 383k ==> Sprawdzanie plików source za pomocą md5sums... injeqt-1.1.0.tar.gz ... Zgadza się ==> Rozpakowywanie źródeł... -> Rozpakowywanie injeqt-1.1.0.tar.gz za pomocą bsdtar ==> Rozpoczynanie build()... -- The C compiler identification is GNU 7.2.1 -- The CXX compiler identification is GNU 7.2.1 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done CMake Deprecation Warning at CMakeLists.txt:34 (cmake_policy): The OLD behavior for policy CMP0020 will be removed from a future version of CMake. The cmake-policies(7) manual explains that the OLD behaviors of all policies are deprecated and that a policy should be set to OLD only under specific short-term circumstances. Projects should be ported to the NEW behavior and not rely on setting a policy to OLD. -- Configuring done -- Generating done -- Build files have been written to: /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0 Scanning dependencies of target injeqt_autogen [ 1%] Automatic MOC for target injeqt [ 1%] Built target injeqt_autogen Scanning dependencies of target injeqt [ 3%] Building CXX object src/CMakeFiles/injeqt.dir/injector.cpp.o In file included from /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/injector.cpp:27:0: /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/containers.h:43:68: error: ‘std::function’ has not been declared inline std::vector<T> transform(const std::vector<S> &source, std::function<T(S)> f) ^~~~~~~~ /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/containers.h:43:76: error: expected ‘,’ or ‘...’ before ‘<’ token e std::vector<T> transform(const std::vector<S> &source, std::function<T(S)> f) ^ /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/containers.h: In function ‘std::vector<T> injeqt::internal::transform(const std::vector<T>&, int)’: /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/containers.h:46:83: error: ‘f’ was not declared in this scope transform(std::begin(source), std::end(source), std::back_inserter(result), f); ^ /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/containers.h: At global scope: /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/containers.h:57:67: error: ‘std::function’ has not been declared inline std::vector<T> extract(const std::vector<S> &sources, std::function<std::vector<T>(const S &)> f) ^~~~~~~~ /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/containers.h:57:75: error: expected ‘,’ or ‘...’ before ‘<’ token std::vector<T> extract(const std::vector<S> &sources, std::function<std::vector<T>(const S &)> f) ^ /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/injector.cpp: In constructor ‘injeqt::v1::injector::injector(std::vector<injeqt::v1::injector*>, std::vector<std::unique_ptr<injeqt::v1::module> >)’: /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/injector.cpp:51:92: error: no matching function for call to ‘transform(std::vector<injeqt::v1::injector*>&, std::function<injeqt::internal::injector_impl*(injeqt::v1::injector*)>&)’ eqt::internal::injector_impl{transform(super_injectors, extract_impl), std::move(modules)}); ^ In file included from /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/injector.cpp:27:0: /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/containers.h:43:23: note: candidate: template<class S, class T> std::vector<T> injeqt::internal::transform(const std::vector<T>&, int) inline std::vector<T> transform(const std::vector<S> &source, std::function<T(S)> f) ^~~~~~~~~ /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/containers.h:43:23: note: template argument deduction/substitution failed: /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/injector.cpp:51:92: note: couldn't deduce template parameter ‘T’ eqt::internal::injector_impl{transform(super_injectors, extract_impl), std::move(modules)}); ^ In file included from /usr/include/c++/7.2.1/algorithm:62:0, from /usr/include/qt/QtCore/qglobal.h:110, from /usr/include/qt/QtCore/QtGlobal:1, from /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/include/injeqt/injeqt.h:23, from /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/include/injeqt/injector.h:23, from /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/injector.cpp:21: /usr/include/c++/7.2.1/bits/stl_algo.h:4332:5: note: candidate: template<class _IIter1, class _IIter2, class _OIter, class _BinaryOperation> _OIter std::transform(_IIter1, _IIter1, _IIter2, _OIter, _BinaryOperation) transform(_InputIterator1 __first1, _InputIterator1 __last1, ^~~~~~~~~ /usr/include/c++/7.2.1/bits/stl_algo.h:4332:5: note: template argument deduction/substitution failed: /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/injector.cpp:51:92: note: deduced conflicting types for parameter ‘_IIter1’ (‘std::vector<injeqt::v1::injector*>’ and ‘std::function<injeqt::internal::injector_impl*(injeqt::v1::injector*)>’) eqt::internal::injector_impl{transform(super_injectors, extract_impl), std::move(modules)}); ^ In file included from /usr/include/c++/7.2.1/algorithm:62:0, from /usr/include/qt/QtCore/qglobal.h:110, from /usr/include/qt/QtCore/QtGlobal:1, from /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/include/injeqt/injeqt.h:23, from /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/include/injeqt/injector.h:23, from /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/injector.cpp:21: /usr/include/c++/7.2.1/bits/stl_algo.h:4295:5: note: candidate: template<class _IIter, class _OIter, class _UnaryOperation> _OIter std::transform(_IIter, _IIter, _OIter, _UnaryOperation) transform(_InputIterator __first, _InputIterator __last, ^~~~~~~~~ /usr/include/c++/7.2.1/bits/stl_algo.h:4295:5: note: template argument deduction/substitution failed: /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/injector.cpp:51:92: note: deduced conflicting types for parameter ‘_IIter’ (‘std::vector<injeqt::v1::injector*>’ and ‘std::function<injeqt::internal::injector_impl*(injeqt::v1::injector*)>’) eqt::internal::injector_impl{transform(super_injectors, extract_impl), std::move(modules)}); ^ /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/injector.cpp:51:113: error: no matching function for call to ‘injeqt::internal::injector_impl::injector_impl(<brace-enclosed initializer list>)’ ::injector_impl{transform(super_injectors, extract_impl), std::move(modules)}); ^ In file included from /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/injector.cpp:28:0: /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/injector-impl.h:102:11: note: candidate: injeqt::internal::injector_impl::injector_impl(std::vector<injeqt::internal::injector_impl*>, std::vector<std::unique_ptr<injeqt::v1::module> >) explicit injector_impl(std::vector<injector_impl *> super_injectors, std::vector<std::unique_ptr<::injeqt::v1::module>> modules); ^~~~~~~~~~~~~ /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/injector-impl.h:102:11: note: conversion of argument 1 would be ill-formed: /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/injector-impl.h:82:11: note: candidate: injeqt::internal::injector_impl::injector_impl(std::vector<std::unique_ptr<injeqt::v1::module> >) explicit injector_impl(std::vector<std::unique_ptr<::injeqt::v1::module>> modules); ^~~~~~~~~~~~~ /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/injector-impl.h:82:11: note: candidate expects 1 argument, 2 provided /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/injector-impl.h:63:2: note: candidate: injeqt::internal::injector_impl::injector_impl() injector_impl(); ^~~~~~~~~~~~~ /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/injector-impl.h:63:2: note: candidate expects 0 arguments, 2 provided /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/injector-impl.h:53:18: note: candidate: injeqt::internal::injector_impl::injector_impl(injeqt::internal::injector_impl&&) class INJEQT_API injector_impl final ^~~~~~~~~~~~~ /tmp/pamac-build-ddd/injeqt/src/injeqt-1.1.0/src/internal/injector-impl.h:53:18: note: candidate expects 1 argument, 2 provided make[2]: *** [src/CMakeFiles/injeqt.dir/build.make:63: src/CMakeFiles/injeqt.dir/injector.cpp.o] Błąd 1 make[1]: *** [CMakeFiles/Makefile2:87: src/CMakeFiles/injeqt.dir/all] Błąd 2 make: *** [Makefile:130: all] Błąd 2 ==> BŁĄD: Wystąpił błąd w build(). Przerywam...
30 stycznia 2018 o 21:08 #665831 stycznia 2018 o 22:14 #6667dddForumowiczno bo nie ma w podstawowym repo (antergosa) i kompiluje z repo AUR
1 lutego 2018 o 19:40 #6668aquilaModeratorinjeqt
Jak już pisałem wcześniej kompiluje się z tego PKGBUILD -a:# $Id$ # Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org> pkgname=injeqt pkgver=1.0.100 pkgrel=1 pkgdesc='Dependency injection framework for Qt' arch=('i686' 'x86_64') url='https://github.com/vogel/injeqt' license=('LGPL2.1') depends=('qt5-base') makedepends=('cmake') _gitroot="git://github.com/vogel/injeqt.git" _gitname="injeqt" build() { cd "$srcdir" msg "Connecting to GIT server...." if [[ -d "$_gitname" ]]; then cd "$_gitname" && git pull origin msg "The local files are updated." else git clone "$_gitroot" "$_gitname" fi msg "GIT checkout done or server timeout" msg "Starting build..." rm -rf "$srcdir/$_gitname-build" git clone "$srcdir/$_gitname" "$srcdir/$_gitname-build" cd "$srcdir/$_gitname-build" cmake -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_INSTALL_LIBDIR=/usr/lib \ -DDISABLE_EXAMPLES=ON \ -DDISABLE_TESTS=ON make } package() { cd "$srcdir/$_gitname-build" make DESTDIR="$pkgdir/" install }
i instalujemy.
Kadu
PKGBUILD
# $Id: PKGBUILD 208988 2017-01-25 08:21:35Z arojas $ # Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org> # Contributor: Mateusz Herych # Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org> pkgname=kadu pkgver=4.3 pkgrel=1 pkgdesc='Qt-based Jabber/XMPP and Gadu-Gadu client' arch=('i686' 'x86_64') url='http://www.kadu.net/' license=('GPL') depends=('libgadu' 'libxss' 'enchant' 'libmpdclient' 'libotr' 'libarchive' 'injeqt' 'xdg-utils' 'qt5-multimedia' 'qt5-x11extras' 'qt5-svg' 'qt5-script' 'qt5-webkit' 'hicolor-icon-theme') makedepends=('cmake' 'libao' 'libsndfile' 'libxtst' 'curl' 'qt5-tools' 'qxmpp') optdepends=('qxmpp: Jabber protocol') source=(http://download.kadu.im/stable/$pkgname-$pkgver.tar.bz2) md5sums=('011899121ca5a7e653892f29072032e2') prepare() { sed -i 's/unity_integration//g' $pkgname-$pkgver/Plugins.cmake sed -i 's/indicator_docking//g' $pkgname-$pkgver/Plugins.cmake cd $pkgname-$pkgver patch -p1 < $startdir/gcc7.patch } build() { mkdir build cd build cmake ../$pkgname-$pkgver \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_INSTALL_LIBDIR=lib \ -DCMAKE_CXX_STANDARD=14 \ -DENABLE_TESTS=OFF make -j4 } package() { cd build make DESTDIR="$pkgdir" LIBDIR=/usr/lib install }
gcc7.patch
diff --git a/kadu-core/plugin/dependency-graph/plugin-dependency-graph-builder.h b/kadu-core/plugin/dependency-graph/plugin-dependency-graph-builder.h index 1e6a500..a231cba 100644 --- a/kadu-core/plugin/dependency-graph/plugin-dependency-graph-builder.h +++ b/kadu-core/plugin/dependency-graph/plugin-dependency-graph-builder.h @@ -22,6 +22,7 @@ #include <QtCore/QObject> #include <map> #include <set> +#include <functional> #include "exports.h" #include "plugin/dependency-graph/plugin-dependency-graph.h"
Oba pliki tworzymy w jednym katalogu. Otwieramy w nim konsole i wydajemy komendę:
makepkg -sirc
Jeśli nie będzie chciało ruszyć to trzeba gcc7.patch nadać prawa wykonywania.
PS. @ddd ni w ząb nie wiem o co chodzi w Twojej ostatniej wypowiedzi. Ostatecznie jeśli nie będzie chciało się kompilować to mogę wrzucić swoje pakiety i dać linki.
1 lutego 2018 o 20:44 #6671dddForumowiczw katalogu mam plik z wklejonym Twoim PKBUILD injeqt i ….
[ddd@mdm-ddd kadu_arch]$ makepkg ==> BŁĄD: PKGBUILD nie istnieje. ==> BŁĄD: An unknown error has occurred. Exiting...
1 lutego 2018 o 20:51 #6672aquilaModeratorNie zrobiłeś czasami literówki w nazwie? Bo przed chwilą skopiowałem ze strony i wszystko działa.
1 lutego 2018 o 21:00 #6673dddForumowiczwstawiam screen
Attachments:
1 lutego 2018 o 21:06 #6675aquilaModeratorTy żarty sobie robisz?
Plik musi mieć nazwę PKGBUILD1 lutego 2018 o 21:08 #6676dddForumowiczo i poszło od razu :D …. jesteś genialny !
1 lutego 2018 o 21:09 #6677aquilaModeratorNie, nie jestem tylko Tobie nie chce się trochę poczytać o AUR i kompilacji.
1 lutego 2018 o 21:13 #6678dddForumowiczsiedze i czytam własnie od godziny.
teraz mam tak:[ddd@mdm-ddd kadu_arch]$ sudo pacman -S injeqt-git-1.2.0.8.gdd7e800-1-x86_64.pkg.tar błąd: pakiet injeqt-git-1.2.0.8.gdd7e800-1-x86_64.pkg.tar nie został znaleziony ostrzeżenie: 'injeqt-git-1.2.0.8.gdd7e800-1-x86_64.pkg.tar' jest plikiem, czy chodziło Ci o -U/--upgrade zamiast -S/--sync? [ddd@mdm-ddd kadu_arch]$
czy mam ten plik rozpakować najpierw?
… poszło z -U
Wszystko działa :)- pierwsza ręczna instalacja .
Dzięki serdeczne ! - AutorPosty
- Musisz być zalogowany aby odpowiedzieć w tym wątku.