12

Six was a gold-medal winner several times in a computer games olympiad. The source code is on GitHub https://github.com/melisgl/six/tree/master/six. It has been pinned for a couple of decades, but I would like to bring it up, however I'm not familiar with programming KDE, Qt or even C++. I'm mostly and assembly, C and Python programmer, and have been at it for about 50 years (really!).

Nevertheless, it was a bit of a surprise when I built a Kubuntu 20.04.3 for the purpose, cloned the repository, and went to start. The usual start is .configure, but even that did not work. Probably because the code is so old, but I need help. It didn't get far and ended up asking if I had things configured correctly, apparently because it could not find kde-config. One hit on a search for that name indicated it was or in in a package called kdelibs5-dev, but I cannot see that in synaptic. Is it in some other package I should install? Is there something simple I could do to get a bit further into .configure?

Here is what the attempt looked like

kevin@kackles:~/Six/six/six$ ./configure
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking for -p flag to install... yes
checking whether build environment is sane... yes
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for kde-config... not found
configure: error: The important program kde-config was not found!
Please check whether you installed KDE correctly.

kevin@kackles:~/Six/six/six$

1 Answers1

11

Direct compilation from 15 years-ago sources probably will not work because of missed dependencies at compile time.

But there are clues that this package is still available in compiled form on Fedora. To prevent Glibc version missmatch we should convert rpm-packages from Fedora 32 to deb-packages, then install them as follows:

sudo apt-get install alien libart-2.0-2 libmng2 libjpeg62 libaudiofile1 libmad0

cd ~/Downloads

wget -c https://kojipkgs.fedoraproject.org//packages/qt3/3.3.8b/80.fc32/x86_64/qt3-3.3.8b-80.fc32.x86_64.rpm sudo alien -i qt3-3.3.8b-80.fc32.x86_64.rpm

wget -c https://kojipkgs.fedoraproject.org//packages/kdelibs3/3.5.10/105.fc32/x86_64/kdelibs3-3.5.10-105.fc32.x86_64.rpm sudo alien -i kdelibs3-3.5.10-105.fc32.x86_64.rpm

wget -c https://kojipkgs.fedoraproject.org//packages/arts/1.5.10/46.fc32/x86_64/arts-1.5.10-46.fc32.x86_64.rpm sudo alien -i arts-1.5.10-46.fc32.x86_64.rpm

wget -c https://kojipkgs.fedoraproject.org//packages/six/0.5.3/35.fc32/x86_64/six-0.5.3-35.fc32.x86_64.rpm sudo alien -i six-0.5.3-35.fc32.x86_64.rpm

And then launch game with LD_LIBRARY_PATH=/usr/lib64 six to get

six on Ubuntu MATE 20.04 LTS

Note: currently I do not know how to fix "No text!" labels, but game seems to be working.

N0rbert
  • 99,918
  • Interestingly I see the fedora sources at https://src.fedoraproject.org/rpms/six/tree/rawhide seem to have a patch for an issue related to newer gcc and a fix for a library linking issue but they don't seem to be doing anything related to kde-config. – Peter Green Jan 19 '22 at 19:20
  • This is why I gone using above method. I was really impressed how Fedora maintain old packages like Qt3 and KDE 3.5. – N0rbert Jan 19 '22 at 19:22
  • 1
    This is interesting, but even if it works (which I will try) it does not solve my issue, because I want to replace the front-end with a command-line version for a research project. Still, if I can get the GUI version working, it will help me understand the code so that I can design a competent command-line version. – ForDummies Jan 19 '22 at 19:36
  • 1
    @ForDummies, if you're scrapping the front end, your best bet is probably to start by looking at the source code, stripping out everything about the user interface, and creating a new makefile for your own project. I expect most of the compile errors you'll encounter will be in the UI-specific code, which you're planning to remove -- there's no point in fixing them. – Mark Jan 19 '22 at 22:56
  • @N0rbert thanks for this. I've installed Fedora and I'm going to try it there. I haven't used Fedora in over a decade, so much is hazy and some just unknown -- I'll probably be asking things on StackExchange like how to find a package installer (no synaptic, I'd guess). – ForDummies Jan 19 '22 at 23:50
  • @Mark, agreed but I want to see it in operation in order to understand the capabilities that I could access in the new interface. – ForDummies Jan 19 '22 at 23:52
  • @N0rbert I marked this as the accepted answer even though it winds up sending me in a different direction. I'm hoping to be able to build from those sources that Peter Green found. – ForDummies Jan 20 '22 at 01:04
  • @Peter Green thanks. I'll be trying to build those sources. Wish me luck. – ForDummies Jan 20 '22 at 01:05
  • Hmm. I was unable to download the sources that Peter Green found. First it wanted me to create a Fedora account, then failed because "Method not allowed at this URL" (possible paraphrase). – ForDummies Jan 20 '22 at 02:06