Hello everyone; I'm trying to compile 5.37.1 version on ubuntu server but no luck. I've tried all the steps on README. I'm getting "error:use of deleted method qAsConst" at "make" step. I think problem is: I can not install qt version 5.7 or greater. qt5-default package is some 5.2 version on ubuntu repositories. any help would be great. Thanks.
Exact error is: In file included from engine/timetableexport.cpp:46:0:
engine/timetable_defs.h:42:25: error: initializing argument 1 of 'void qAsConst(const T&&) [with T = QList<int>]'
template <class T> void qAsConst(const T&&) = delete;
Indeed, it is a bug of mine.
You can solve it for now: in src.pro and src-cl.pro, instead of c++11, write c++14. And use a C++14 compiler.
I will try to make it compile with a C++11 compiler.
I am sorry for this bug. Thank you for reporting! I will solve it as soon as possible and release a new version.
Thanks. That solved the issue. I'm writing details for anyone that needs this:
Ubuntu 14 command-line version:
edit fet.pro
delete src.pro from second line.
edit src/src-cl.pro
find c++11 and change it to c++14
sudo apt-get update && \
sudo apt-get install build-essential software-properties-common -y && \
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y && \
sudo apt-get update && \
sudo apt-get install gcc-snapshot -y && \
sudo apt-get update && \
sudo apt-get install gcc-8 g++-8 -y && \
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 60 --slave /usr/bin/g++ g++ /usr/bin/g++-8
sudo update-alternatives --config gcc
apt-get install qt5-default
go to fet directory
qmake
make
make install
than you can call fet with command "fet-cl" from terminal
1. If you have multi-core processor, make -j 4 (or more) is much faster.
2. I found the correct fix using a C++11 compiler, so the above steps will not be needed. I might release the new version today (Wednesday, 15 August). Please see 3.
3. Please try the official FET-5.37.1 with the attached file (so without your changes / without any other changes), and tell me if it is compiling/working OK.
Failed with this configuration:
gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.4)
QMake version 3.0
Using Qt version 5.2.1 in /usr/lib/x86_64-linux-gnu
engine/timetableexport.cpp:9875:28: error: 'assert' was not declared in this scope
default: assert(0==1); break;
^
Makefile.src-cl:1113: recipe for target '../tmp/commandline/timetableexport.o' failed
make[1]: *** [../tmp/commandline/timetableexport.o] Error 1
make[1]: Leaving directory '/root/fet-5.37.1/src'
Makefile:39: recipe for target 'sub-src-src-cl-pro-make_default' failed
make: *** [sub-src-src-cl-pro-make_default] Error 2
succeeded with this configuration:
gcc version 8.1.0 (Ubuntu 8.1.0-5ubuntu1~14.04)
QMake version 3.0
Using Qt version 5.2.1 in /usr/lib/x86_64-linux-gnu
Probably a bug of gcc 4.8.4. Very weird!
Thank you! I will post an official FET soon, fixing this (but it will probably not work with this gcc 4.8.4).
I am not sure if such a fix is needed. It is dangerous to use so old and bugged software versions.
Of course the Ubuntu 14.04 LTS kernel is supported until April 2019. But a lot of other software isn't supported anymore in that version.
For example Qt < 5.9 is not supported anymore. It is critical to use lower versions.
Qt 5.2 was release 2013 and expired a long time ago now.
Qt 5.9 is the LTS version and still supported.
The current version is Qt 5.11.1
I am using ubuntu 16.04 LTS. So i thought my system will be up to date until April 2021. But sadly that is not true. Only 67% of the packages are support so long.
28% are only supported until April 2019. The other packages are already today expired :-(
The current LTS version is 18.04. There will be no other LTS version in the next 2 years. So in fact you have got max 8 month time left to update your system. You should think about updating it soon.
You can check that with "ubuntu-support-status".
BTW Liviu:
14.04 LTS use gcc 4.8.2 by default
16.04 LTS use gcc 5.3.1 by default
Since 14.04 expire in 8 month i suggest to have a minimum requirement of gcc 5.3.1
I just released the new official FET version, 5.37.2. Thank you, yakup, for your report!