Closed eugeene closed 6 years ago
Since qca is also compiled with Qt, you need a version compiled with Qt5. Then it seems iris configure script is outdated. I remember I updated it. What version do you compile? passing --qtselect=5 to configure script may help in some cases.
@eugeene What version of iris
have you tried to build?
@eugeene Have in mind that build of iris
library from master branch in Ubuntu 14.04 is not officially supported, because there are too old versions of system libraries and compiler there.
--qtselect=5 passed to ./configure makes the error above (missing QCA >= 2.0) Even though the 2.1.1 version is installed.
technick: I tried all the 'main' git branches, all with the same error (I think...).
Also - I described the wrong ubuntu version. I am trying to compile it on Ubuntu 16.04 server in VirtualBox, not 14.04. We have an old 32bit. software that is using IRIS library, so I just wanted to try compile it straight on a 32bit system.
It is not a big deal. If it runs on 64bit recent systems, from our company perspective this is not my issue. Ill tell our developers, we should be making 64bit executables in 2018 ;)
Than you for your time!
@eugeene Build in 32-bit Ubuntu 16.04 is supported and should work fine. See our official PPA for Psi+ for example. So let's solve your build issues.
@eugeene First of all check if you have installed all build dependencies:
sudo apt install -V libidn11-dev libminizip-dev libqca-qt5-2-dev libsm-dev libssl-dev libxss-dev zlib1g-dev
Unfortunately ./configure
script generated by qconf
tool may show not very informative messages, but there is --verbose
command-line option which improve situation a bit. So if output of ./configure
script in your system does not look like this:
$ ./configure --qtselect=5
Configuring Iris ...
Verifying Qt build environment ... ok
Checking for Qt >= 4.2 ... yes
Checking for LibIDN ... yes
Checking for QCA >= 2.0 ... yes
Checking for zlib ... yes
Checking for QJDns ... Disabled for Qt5 and above
Good, your configure finished. Now run /usr/bin/make.
try to launch:
./configure --qtselect=5 --verbose
and look for details.
Also the build using of cmake
configuration system is supported. You may try it and look if it works better for you:
mkdir builddir
$ cd builddir
$ cmake ..
Output should look like this:
-- The C compiler identification is GNU 8.2.0
-- The CXX compiler identification is GNU 8.2.0
-- 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
-- Found Qca: /usr/lib/x86_64-linux-gnu/libqca-qt5.so
-- Found IDN: /usr/lib/x86_64-linux-gnu/libidn.so
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.11")
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/iris__tmp/builddir
Unfortunately I don't have Ubuntu 14.04 now. but on 18.04 compilation went fine with configure+make. And yes probably cmake may solve this problem. Also I regenerated configure script once again but there are no significant changes for linux based systems.
Yes, I can compile the library on my main machine - 18.04 64bit. But in my VM with 16.04 32bit, I still get errors :/ Weird....
I'll try 16.04 later today. We still support it.
Just for info:
reinstalled my VM, and now:
even with QT5, I do not get the "Need QCA >= 2.0" error anymore (wtf...?).
when compiling with classic ./configure and make, I still get:
In file included from xmpp-im/xmpp_discoinfotask.cpp:29:0:
xmpp-im/xmpp_client.h:31:1: error: expected constructor, destructor, or type conversion before ‘class’
class QString;
^
Makefile:845: recipe for target '.obj/xmpp_discoinfotask.o' failed
make[2]: [.obj/xmpp_discoinfotask.o] Error 1
make[2]: Leaving directory '/home/martinez/iris/src/xmpp'
Makefile:62: recipe for target 'sub-xmpp-make_default' failed
make[1]: [sub-xmpp-make_default] Error 2
make[1]: Leaving directory '/home/martinez/iris/src'
Makefile:39: recipe for target 'sub-src-make_default' failed
when using tehnick's cmake method, compilation is successful.
So thanks a lot, friends ;)
Hello, I am having issues compiling your library.
I am using the standard combo of:
The error I get says:
Also, I try switching QT4 to QT5. When using QT4, the ./configure command runs okay. But when I switch to QT5, the ./configure halts with error:
Which is weird because I have the QCA dev libs installed in version 2.1.1
Can anyone help?