Package Details: qt4 4.8.7-35

Git Clone URL: https://aur.archlinux.org/qt4.git (read-only, click to copy)
Package Base: qt4
Description: A cross-platform application and UI framework
Upstream URL: https://www.qt.io
Licenses: custom, GPL3, LGPL, FDL
Conflicts: qt
Replaces: qt
Submitter: arojas
Maintainer: dviktor
Last Packager: dviktor
Votes: 75
Popularity: 1.01
First Submitted: 2019-05-01 11:51 (UTC)
Last Updated: 2022-05-13 12:03 (UTC)

Sources (22)

Pinned Comments

dviktor commented on 2022-09-28 18:33 (UTC)

PKGBUILD for this package is being maintained there. You can install pre-built packages from my repo

dviktor commented on 2019-06-18 12:50 (UTC) (edited on 2022-01-27 12:28 (UTC) by dviktor)

Qt4 binary package has moved to my personal repository located here. You can add it to your /etc/pacman.conf for convenience, if you want (don't forget to import my GPG key).

eschwartz commented on 2019-05-09 13:24 (UTC)

@semeion,

qt4 was expelled from the official repositories due to https://lists.archlinux.org/pipermail/arch-dev-public/2019-April/029560.html

It will not be restored, because software needs to stop using qt4. It's fine for people to still use it via the AUR if they have old software that is not ported, but the proper solution is to get that software ported to qt5.

"It takes a long time to compile" is not a reason to move it to community.

@xuanruiqi,

Only Developers and Trusted Users have access to pkgbuild.com, and we will not be uploading qt4 there. If we wanted qt4, we would upload it to community, but we don't -- we have managed to move every package still being actively maintained in the official repos, over to qt5, and we want to stay that way.

...

Again, the proper long-term solution is to get software ported over to qt5.

dviktor commented on 2019-05-05 17:49 (UTC) (edited on 2019-05-15 19:02 (UTC) by dviktor)

For those who have problems with ‘std::tr1’ has not been declared error: build in clean chroot with extra-x86_64-build script.

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 9 10 11 12 .. 18 Next › Last »

Rumcajs commented on 2020-06-04 18:58 (UTC) (edited on 2020-06-04 19:03 (UTC) by Rumcajs)

Hi, have both files in a directory qt4-4.8.7-32-x86_64.pkg.tar.xz qt4-4.8.7-32-x86_64.pkg.tar.xz.sig

/>sudo pacman -U qt4-4.8.7-32-x86_64.pkg.tar.xz error: 'qt4-4.8.7-32-x86_64.pkg.tar.xz': invalid or corrupted package (PGP signature)

pacman-key -v qt4-4.8.7-32-x86_64.pkg.tar.xz.sig ==> Checking qt4-4.8.7-32-x86_64.pkg.tar.xz.sig... (detached) gpg: Signature made Sun 10 May 2020 07:52:41 PM CEST gpg: using RSA key DD3BF75DCD96541AC723B7CD6A4CD3276CA8EBBD gpg: Note: trustdb not writable gpg: Good signature from "Viktor Drobot linux776@gmail.com" [unknown] gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: DD3B F75D CD96 541A C723 B7CD 6A4C D327 6CA8 EBBD ==> ERROR: The signature identified by qt4-4.8.7-32-x86_64.pkg.tar.xz.sig could not be verified.

Fix?

valandil commented on 2020-05-20 13:31 (UTC)

@Hwiparam, the error message you posted in not super specific. Please follow dviktor's recommendation of building in a clean chroot with extra-x86_64-build (see pinned comments).

Also, note that yaourt is deprecated and not recommended for use.

Hwiparam commented on 2020-05-20 13:16 (UTC)

Build fails with this:

make[2]: [Makefile.WebKit:1059: .obj/release-static/YarrInterpreter.o] Error 1 make[2]: Leaving directory '/tmp/yaourt-tmp-noname/aur-qt4/src/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore' make[1]: [Makefile.WebKit:43: sub-JavaScriptCore-JavaScriptCore-pro-make_default-ordered] Error 2 make[1]: Leaving directory '/tmp/yaourt-tmp-noname/aur-qt4/src/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source' make: *** [Makefile:747: sub-webkit-make_default-ordered] Error 2 ==> ERROR: A failure occurred in build(). Aborting... ==> ERROR: Makepkg was unable to build qt4.

valandil commented on 2020-05-20 11:47 (UTC)

@ubuntourist, extra-x86_64-build only builds the package, it does not install it. To install it, use yay -U qt4-4.8.7-32-x86_64.pkg.tar.zst.

ubuntourist commented on 2020-05-20 02:24 (UTC) (edited on 2020-05-20 02:24 (UTC) by ubuntourist)

I'm having trouble. I'm missing something still:

$ git clone https://aur.archlinux.org/qt4.git
$ cd qt4
$ extra-x86_64-build
...
Packages (1) qt4-4.8.7-32

Total Installed Size:  82.91 MiB

:: Proceed with installation? [Y/n] 
(1/1) checking keys in keyring             [...] 100%
(1/1) checking package integrity           [...] 100%
(1/1) loading package files                [...] 100%
(1/1) checking for file conflicts          [...] 100%
:: Processing package changes...
(1/1) installing qt4                       [...] 100%
Optional dependencies for qt4
    postgresql-libs: PostgreSQL driver [installed]
    mariadb-libs: MariaDB driver [installed]
    unixodbc: ODBC driver [installed]
    libfbclient: Firebird/iBase driver [installed]
    libxinerama: Xinerama support [installed]
    libxcursor: Xcursor support [installed]
    libxfixes: Xfixes support [installed]
    icu: Unicode support [installed]
    sni-qt: StatusNotifierItem (AppIndicators) support
:: Running post-transaction hooks...
(1/3) Arming ConditionNeedsUpdate...
(2/3) Updating icon theme caches...
(3/3) Updating the desktop file MIME type cache...
resolving dependencies...
looking for conflicting packages...

Packages (6) libnsl-1.2.0-2  licenses-20200427-1  pyalpm-0.9.1-2  python-3.8.3-1  python-pyelftools-0.26-1
             namcap-3.2.10-1

Total Installed Size:  79.94 MiB

:: Proceed with installation? [Y/n] 
(6/6) checking keys in keyring             [...] 100%
(6/6) checking package integrity           [...] 100%
(6/6) loading package files                [...] 100%
(6/6) checking for file conflicts          [...] 100%
:: Processing package changes...
(1/6) installing libnsl                    [...] 100%
(2/6) installing python                    [...] 100%
Optional dependencies for python
    python-setuptools
    python-pip
    sqlite [installed]
    mpdecimal: for decimal
    xz: for lzma [installed]
    tk: for tkinter
(3/6) installing pyalpm                    [...] 100%
(4/6) installing licenses                  [...] 100%
(5/6) installing python-pyelftools         [...] 100%
(6/6) installing namcap                    [...] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
Checking PKGBUILD
Checking qt4-4.8.7-32-x86_64.pkg.tar.zst
qt4 W: unneeded dependency on a package run when needed by hooks.
qt4 W: Dependency unixodbc detected but optional (libraries ['usr/lib/libodbc.so.2'] needed in files ['usr/lib/qt4/plugins/sqldrivers/libqsqlodbc.so'])
qt4 W: Dependency libfbclient detected but optional (libraries ['usr/lib/libfbclient.so.2'] needed in files ['usr/lib/qt4/plugins/sqldrivers/libqsqlibase.so'])
qt4 W: Dependency postgresql-libs detected but optional (libraries ['usr/lib/libpq.so.5'] needed in files ['usr/lib/qt4/plugins/sqldrivers/libqsqlpsql.so'])
qt4 W: Dependency mariadb-libs detected but optional (libraries ['usr/lib/libmariadb.so.3'] needed in files ['usr/lib/qt4/plugins/sqldrivers/libqsqlmysql.so'])
qt4 W: Dependency ca-certificates included but already satisfied
==> Running checkpkg
error: target not found: qt4
==> WARNING: Skipped checkpkg due to missing repo packages
$

and then yay shows me that qt4 is upgradable.

valandil commented on 2020-05-12 19:55 (UTC)

I ran into the std::tr1 has not been declared error, and got it to compile under a clean chroot just fine.

Out of curiosity though, do we know why a clean chroot would affect std::tr1 includes? Is that a weird side effect of qmake and how it constructs its build environment? Am I missing something?

Thanks for any insight :)

ryanw commented on 2020-05-12 06:52 (UTC)

@dviktor I run with single-threaded (make -j1) but still got error :

../../../sql/drivers/mysql/qsql_mysql.cpp: At global scope:
../../../sql/drivers/mysql/qsql_mysql.cpp:197:9: error: ‘my_bool’ does not name a type; did you mean ‘bool’?
  197 |         my_bool nullIndicator;
      |         ^~~~~~~
      |         bool
../../../sql/drivers/mysql/qsql_mysql.cpp: In constructor ‘QMYSQLResultPrivate::QMyField::QMyField()’:
../../../sql/drivers/mysql/qsql_mysql.cpp:193:28: error: class ‘QMYSQLResultPrivate::QMyField’ does not have any field named ‘nullIndicator’
  193 |             : outField(0), nullIndicator(false), bufLength(0ul),
      |                            ^~~~~~~~~~~~~
../../../sql/drivers/mysql/qsql_mysql.cpp: In member function ‘bool QMYSQLResultPrivate::bindInValues()’:
../../../sql/drivers/mysql/qsql_mysql.cpp:397:28: error: ‘struct QMYSQLResultPrivate::QMyField’ has no member named ‘nullIndicator’
  397 |         bind->is_null = &f.nullIndicator;
      |                            ^~~~~~~~~~~~~
../../../sql/drivers/mysql/qsql_mysql.cpp: In member function ‘virtual QVariant QMYSQLResult::data(int)’:
../../../sql/drivers/mysql/qsql_mysql.cpp:604:15: error: ‘const struct QMYSQLResultPrivate::QMyField’ has no member named ‘nullIndicator’
  604 |         if (f.nullIndicator)
      |               ^~~~~~~~~~~~~
../../../sql/drivers/mysql/qsql_mysql.cpp: In member function ‘virtual bool QMYSQLResult::isNull(int)’:
../../../sql/drivers/mysql/qsql_mysql.cpp:681:35: error: ‘const struct QMYSQLResultPrivate::QMyField’ has no member named ‘nullIndicator’
  681 |        return d->fields.at(field).nullIndicator;
      |                                   ^~~~~~~~~~~~~
../../../sql/drivers/mysql/qsql_mysql.cpp: In member function ‘virtual bool QMYSQLResult::exec()’:
../../../sql/drivers/mysql/qsql_mysql.cpp:933:13: error: ‘my_bool’ was not declared in this scope; did you mean ‘bool’?
  933 |     QVector<my_bool> nullVector;
      |             ^~~~~~~
      |             bool
../../../sql/drivers/mysql/qsql_mysql.cpp:933:20: error: template argument 1 is invalid
  933 |     QVector<my_bool> nullVector;
      |                    ^
../../../sql/drivers/mysql/qsql_mysql.cpp:947:20: error: request for member ‘resize’ in ‘nullVector’, which is of non-class type ‘int’
  947 |         nullVector.resize(values.count());
      |                    ^~~~~~
../../../sql/drivers/mysql/qsql_mysql.cpp:954:25: error: invalid types ‘int[int]’ for array subscript
  954 |             nullVector[i] = static_cast<my_bool>(val.isNull());
      |                         ^
../../../sql/drivers/mysql/qsql_mysql.cpp:954:41: error: ‘my_bool’ does not name a type; did you mean ‘bool’?
  954 |             nullVector[i] = static_cast<my_bool>(val.isNull());
      |                                         ^~~~~~~
      |                                         bool
../../../sql/drivers/mysql/qsql_mysql.cpp:955:46: error: invalid types ‘int[int]’ for array subscript
  955 |             currBind->is_null = &nullVector[i];
      |                                              ^
../../../sql/drivers/mysql/qsql_mysql.cpp:1051:16: error: expected ‘;’ before ‘update_max_length’
 1051 |         my_bool update_max_length = true;
      |                ^~~~~~~~~~~~~~~~~~
      |                ;
../../../sql/drivers/mysql/qsql_mysql.cpp:1060:72: error: ‘update_max_length’ was not declared in this scope
 1060 |   mysql_stmt_attr_set(d->stmt, STMT_ATTR_UPDATE_MAX_LENGTH, &update_max_length);
      |                                                              ^~~~~~~~~~~~~~~~~

../../../sql/drivers/mysql/qsql_mysql.cpp: In member function ‘virtual bool QMYSQLDriver::open(const QString&, const QString&, const QString&, const QString&, int, const QString&)’:
../../../sql/drivers/mysql/qsql_mysql.cpp:1248:5: error: ‘my_bool’ was not declared in this scope; did you mean ‘bool’?
 1248 |     my_bool reconnect=false;
      |     ^~~~~~~
      |     bool
../../../sql/drivers/mysql/qsql_mysql.cpp:1263:21: error: ‘reconnect’ was not declared in this scope; did you mean ‘connect’?
 1263 |                     reconnect = true;
      |                     ^~~~~~~~~
      |                     connect
../../../sql/drivers/mysql/qsql_mysql.cpp:1299:12: error: ‘reconnect’ was not declared in this scope; did you mean ‘connect’?
 1299 |         if(reconnect)
      |            ^~~~~~~~~
      |            connect
In file included from ../../../../include/QtCore/qvector.h:1,
                 from ../../../../include/QtSql/../../src/sql/kernel/qsqlresult.h:46,
                 from ../../../../include/QtSql/qsqlresult.h:1,
                 from ../../../sql/drivers/mysql/qsql_mysql.h:46,
                 from ../../../sql/drivers/mysql/qsql_mysql.cpp:42:
../../../../include/QtCore/../../src/corelib/tools/qvector.h: In instantiation of ‘void QVector<T>::realloc(int, int) [with T = QByteArray]’:
../../../../include/QtCore/../../src/corelib/tools/qvector.h:577:9:   required from ‘void QVector<T>::append(const T&) [with T = QByteArray]’
../../../sql/drivers/mysql/qsql_mysql.cpp:1020:43:   required from here
../../../../include/QtCore/../../src/corelib/tools/qvector.h:503:25: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘QVector<QByteArray>::Data’ {aka ‘struct QVectorTypedData<QByteArray>’} with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess]
  503 |                 ::memcpy(x.p, p, sizeOfTypedData() + (qMin(aalloc, d->alloc) - 1) * sizeof(T));
      |                 ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../../../../include/QtCore/qvector.h:1,
                 from ../../../../include/QtSql/../../src/sql/kernel/qsqlresult.h:46,
                 from ../../../../include/QtSql/qsqlresult.h:1,
                 from ../../../sql/drivers/mysql/qsql_mysql.h:46,
                 from ../../../sql/drivers/mysql/qsql_mysql.cpp:42:
../../../../include/QtCore/../../src/corelib/tools/qvector.h:94:8: note: ‘QVector<QByteArray>::Data’ {aka ‘struct QVectorTypedData<QByteArray>’} declared here
   94 | struct QVectorTypedData : private QVectorData
      |        ^~~~~~~~~~~~~~~~
In file included from ../../../../include/QtCore/qvector.h:1,
                 from ../../../../include/QtSql/../../src/sql/kernel/qsqlresult.h:46,
                 from ../../../../include/QtSql/qsqlresult.h:1,
                 from ../../../sql/drivers/mysql/qsql_mysql.h:46,
                 from ../../../sql/drivers/mysql/qsql_mysql.cpp:42:
../../../../include/QtCore/../../src/corelib/tools/qvector.h: In instantiation of ‘void QVector<T>::realloc(int, int) [with T = QVariant]’:
../../../../include/QtCore/../../src/corelib/tools/qvector.h:337:3:   required from ‘void QVector<T>::detach_helper() [with T = QVariant]’
../../../../include/QtCore/../../src/corelib/tools/qvector.h:123:84:   required from ‘QVector<T>::QVector(const QVector<T>&) [with T = QVariant]’
../../../sql/drivers/mysql/qsql_mysql.cpp:935:50:   required from here
../../../../include/QtCore/../../src/corelib/tools/qvector.h:503:25: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘QVector<QVariant>::Data’ {aka ‘struct QVectorTypedData<QVariant>’} with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess]
  503 |                 ::memcpy(x.p, p, sizeOfTypedData() + (qMin(aalloc, d->alloc) - 1) * sizeof(T));
      |                 ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../../../../include/QtCore/qvector.h:1,
                 from ../../../../include/QtSql/../../src/sql/kernel/qsqlresult.h:46,
                 from ../../../../include/QtSql/qsqlresult.h:1,
                 from ../../../sql/drivers/mysql/qsql_mysql.h:46,
                 from ../../../sql/drivers/mysql/qsql_mysql.cpp:42:
../../../../include/QtCore/../../src/corelib/tools/qvector.h:94:8: note: ‘QVector<QVariant>::Data’ {aka ‘struct QVectorTypedData<QVariant>’} declared here
   94 | struct QVectorTypedData : private QVectorData
      |        ^~~~~~~~~~~~~~~~
make[3]: *** [Makefile:858: .obj/release-shared/qsql_mysql.o] Error 1
make[3]: Leaving directory '/home/ryan/.cache/yay/qt4/src/qt-everywhere-opensource-src-4.8.7/src/plugins/sqldrivers/mysql'
make[2]: *** [Makefile:65: sub-mysql-make_default] Error 2
make[2]: Leaving directory '/home/ryan/.cache/yay/qt4/src/qt-everywhere-opensource-src-4.8.7/src/plugins/sqldrivers'
make[1]: *** [Makefile:48: sub-sqldrivers-make_default] Error 2
make[1]: Leaving directory '/home/ryan/.cache/yay/qt4/src/qt-everywhere-opensource-src-4.8.7/src/plugins'
make: *** [Makefile:782: sub-plugins-make_default-ordered] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
Error making: qt4

dviktor commented on 2020-05-11 17:31 (UTC)

@ryanw actually there is no useful info in that log. seems like some make subprocess has failed. try to run with single-threaded make explicitly (make -j1)

ryanw commented on 2020-05-11 15:00 (UTC)

I got problem :

rm -f libqconnmanbearer.so
linking ../../../../plugins/bearer/libqconnmanbearer.so
mv -f libqconnmanbearer.so ../../../../plugins/bearer/
make[3]: Leaving directory '/home/ryan/.cache/yay/qt4/src/qt-everywhere-opensource-src-4.8.7/src/plugins/bearer/connman'
rm -f libqnmbearer.so
linking ../../../../plugins/bearer/libqnmbearer.so
mv -f libqnmbearer.so ../../../../plugins/bearer/
make[3]: Leaving directory '/home/ryan/.cache/yay/qt4/src/qt-everywhere-opensource-src-4.8.7/src/plugins/bearer/networkmanager'
make[2]: Leaving directory '/home/ryan/.cache/yay/qt4/src/qt-everywhere-opensource-src-4.8.7/src/plugins/bearer'
make[1]: Leaving directory '/home/ryan/.cache/yay/qt4/src/qt-everywhere-opensource-src-4.8.7/src/plugins'
make: *** [Makefile:782: sub-plugins-make_default-ordered] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
Error making: qt4