ExplosBlue / CoinKiller

NSMB2 level editor!
GNU General Public License v3.0
52 stars 19 forks source link

Can't compile on Ubuntu 20.04 #53

Closed i-can-not-program closed 4 years ago

i-can-not-program commented 4 years ago

These are the errors I get when I try to compile it with QtCreator:

../CoinKiller/level.cpp:1092:28: error: ‘class QList<Sprite>’ has no member named ‘swapItemsAt’ 1092 | rightCamLimits.swapItemsAt(i, i+1); | ^~~ ../CoinKiller/level.cpp:1097:36: error: ‘class QList<Sprite>’ has no member named ‘swapItemsAt’ 1097 | rightCamLimits.swapItemsAt(j-1, j); | ^~~ ../CoinKiller/level.cpp:1108:29: error: ‘class QList<Sprite>’ has no member named ‘swapItemsAt’ 1108 | bottomCamLimits.swapItemsAt(i, i+1); | ^~~ ../CoinKiller/level.cpp:1113:37: error: ‘class QList<Sprite>’ has no member named ‘swapItemsAt’ 1113 | bottomCamLimits.swapItemsAt(j-1, j); | ^~~ ../CoinKiller/tileseteditorwindow.cpp: In member function ‘void TilesetEditorWindow::loadBehaviors()’: ../CoinKiller/tileseteditorwindow.cpp:308:52: warning: format not a string literal and no format arguments [-Wformat-security] 308 | qDebug("behaviors.xml from: " + time.toLatin1());

RicBent commented 4 years ago

Your Qt version seems to be outdated. QList::swapItemsAt was introduced in Qt 5.13.

i-can-not-program commented 4 years ago

How do I get a newer version of Qt? I tried downloading it from the website but they wanted me to fill out a form, Can I get it in a different way or do I have to fill out the form to get it?

RicBent commented 4 years ago

I'm not sure if Ubuntu repos provide a current version of Qt5. Probably not.

Downloading Qt from their website now requires you to fill out that dumb form. You probably don't have many other options beside filling it out if you want a newer version.

Actually though the code that uses QList::swapItemsAt is quite bloated and removing those calls is easy. Will do a commit later that removes it which should allow you to compile on your older Qt version.

RicBent commented 4 years ago

Fixed in 6d8abe46d287a558c7a13fe8fc64a2f5e5a53d1b