Neural-Systems-at-UIO / nutil

https://nutil.readthedocs.io/en/latest/
GNU General Public License v3.0
12 stars 5 forks source link

source/ProcessManager/report.cpp:950:93: error: ‘class QSharedPointer<CoordinateTransform>’ has no member named ‘get’ #309

Closed paulbrodersen closed 1 year ago

paulbrodersen commented 1 year ago

Hi, thanks for making nutil available! I am trying to compile nutil on a linux box and I am running into a few issues. I have patched the first problem (PR here), but I am now running into another error:

source/ProcessManager/report.cpp: In member function ‘void Reports::Create3DSummaryJson(QString, QVector<QSharedPointer<NutilProcess> >, QVector<QSharedPointer<ProcessItem> >, float, double, QString, bool)’:
source/ProcessManager/report.cpp:703:72: error: ‘class QSharedPointer<CoordinateTransform>’ has no member named ‘get’
             QVector3D invCenter = InvProject(a->m_center,a,0,transform.get());
                                                                        ^~~
source/ProcessManager/report.cpp:722:93: error: ‘class QSharedPointer<CoordinateTransform>’ has no member named ‘get’
                 QVector3D v = InvProject(points[(int)k],a,spread,invCenter, &alt, transform.get());
                                                                                             ^~~
source/ProcessManager/report.cpp: In member function ‘void Reports::Create3DSliceJson(QString, QVector<QSharedPointer<NutilProcess> >, QVector<QSharedPointer<ProcessItem> >, float, double, bool)’:
source/ProcessManager/report.cpp:925:77: error: ‘class QSharedPointer<CoordinateTransform>’ has no member named ‘get’
                 QVector3D invCenter = InvProject(a->m_center,a,0, transform.get());
                                                                             ^~~
source/ProcessManager/report.cpp:950:93: error: ‘class QSharedPointer<CoordinateTransform>’ has no member named ‘get’
                     QVector3D v = InvProject(points[k],a,spread, invCenter, &alt, transform.get());
                                                                                             ^~~
Makefile:2399: recipe for target 'report.o' failed
make: *** [report.o] Error 1
make: *** Waiting for unfinished jobs....

The full combined STDOUT and STDERR log can be perused here. Any guidance and trouble shooting help would be much appreciated.

paulbrodersen commented 1 year ago

QMake version 3.1 Using Qt version 5.9.5 in /usr/lib/x86_64-linux-gnu

sharoncy commented 1 year ago

Would you look at this @leuat?

Tevemadar commented 1 year ago

QSharedPointer::get was added in Qt version 5.11, that's why it's not present in 5.9.5. According to the documentation pages, Qt 5.15 LTS seems to be the oldest supported Qt version right now (where the method exists), so I'd definitely suggest updating.

paulbrodersen commented 1 year ago

Thanks for the quick reply. I will look into upgrading Qt (without breaking any of the other things that need to run on this old box) and report back.