[SOLVED] Instalacja Kadu i błąd z pakietem injeqt

Jesteś nowy na forum? Przeczytaj ...

Home Fora Forum wsparcia Oprogramowanie [SOLVED] Instalacja Kadu i błąd z pakietem injeqt

Oglądasz 11 posty - 1 do 11 (z 11 ogółem)
  • Autor
    Posty
  • #6657
    ddd
    Forumowicz

    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...
    #6658
    Avatar photoaquila
    Moderator

    Tutaj masz pkgbuild injeqt, który się kompiluje.

    #6667
    ddd
    Forumowicz

    no bo nie ma w podstawowym repo (antergosa) i kompiluje z repo AUR

    #6668
    Avatar photoaquila
    Moderator

    injeqt
    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.

    #6671
    ddd
    Forumowicz

    w 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...
    #6672
    Avatar photoaquila
    Moderator

    Nie zrobiłeś czasami literówki w nazwie? Bo przed chwilą skopiowałem ze strony i wszystko działa.

    #6673
    ddd
    Forumowicz

    wstawiam screen

    #6675
    Avatar photoaquila
    Moderator

    Ty żarty sobie robisz?
    Plik musi mieć nazwę PKGBUILD

    #6676
    ddd
    Forumowicz

    o i poszło od razu :D …. jesteś genialny !

    #6677
    Avatar photoaquila
    Moderator

    Nie, nie jestem tylko Tobie nie chce się trochę poczytać o AUR i kompilacji.

    #6678
    ddd
    Forumowicz

    siedze 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 !

Oglądasz 11 posty - 1 do 11 (z 11 ogółem)
  • Musisz być zalogowany aby odpowiedzieć w tym wątku.