How might I go about running Tux: A Quest for Herring on modern Debian?
Linux - GamesThis forum is for all discussion relating to gaming in Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
How might I go about running Tux: A Quest for Herring on modern Debian?
For starters, where might I even download the game? Second, once I do find the game, what might I need to get it running? Has anyone successfully run the game anytime recently?
I'd just like to try playing this rather historic (if underrated) FOSS game starring everyone's favorite chubby penguin.
curl https://plib.sourceforge.net/dist/plib-1.8.5.tar.gz -o plib-1.8.5.tar.gz
tar xzf plib-1.8.5.tar.gz
./configure
...
config.status: creating src/net/Makefile
config.status: executing depfiles commands
PLIB configuration information:
Building FNT library: yes
Building JS library: yes
Building NET library: yes
Building PUI library: yes
Building puAux library: yes
Building SG library: yes
Building PSL library: yes
Building SL library: yes
Building SSG library: yes
Building ssgAux library: yes
Building PW library: yes
Building UTIL library: yes
make
#many warnings, no errors(old source)
...
rm -f libplibpw.a
ar cru libplibpw.a pw.o pwX11.o pwWindows.o pwMacOSX.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libplibpw.a
make[2]: Leaving directory '/me/cpp/plib/plib-1.8.5/src/pw'
make[2]: Entering directory '/me/cpp/plib/plib-1.8.5/src'
make[2]: Nothing to be done for 'all-am'.
make[2]: Leaving directory '/me/cpp/plib/plib-1.8.5/src'
make[1]: Leaving directory '/me/cpp/plib/plib-1.8.5/src'
make[1]: Entering directory '/me/cpp/plib/plib-1.8.5'
make[1]: Nothing to be done for 'all-am'.
make[1]: Leaving directory 'me/cpp/plib/plib-1.8.5
I don't want to install this. plib did build, tuxaqfh look like it is going to build. You don't have to install plib after you build it, but The OP will need to tell tuxaqfh Makefile where it can find pblib, if you leave it in the build dir.
For debian (as topic suggests), easiest just to install libplib-dev package instead of building that manually. I also had to install libxmu-dev and libxi-dev.
The clue I got from you was to run autogen.sh before configure for the github version; that wasn't in the instructions.
But I got a different error than with the sourceforge code.
Code:
/usr/bin/ld: gui.o: in function `GUI::GUI()':
/home/legacy/tuxaqfh/src/gui.cxx:172: undefined reference to `jsJoystick::jsJoystick(int)'
/usr/bin/ld: gui.o: in function `GUI::joystickInput()':
/home/legacy/tuxaqfh/src/gui.cxx:276: undefined reference to `jsJoystick::read(int*, float*)'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:410: tux_aqfh] Error 1
make[1]: Leaving directory '/home/legacy/tuxaqfh/src'
make: *** [Makefile:362: all-recursive] Error 1
I got the same errors, so...I remarked out lines 172, 276 in gui.cxx
And that compiled.
Code:
./tux_aqfh --help
WELCOME TO: TUXEDO T. PENGUIN - A QUEST FOR HERRING.
by Steve and Oliver Baker
<sjbaker1@airmail.net>
http://tuxaqfh.sourceforge.net
#####
#######
# # #
#" #" #
Linux ##vvvvv##
Rules! ## vvv ##
# ##
## ##
### ###
+++##### ##++
++++++# #++++++
+++++++# #+++++++
+++++#######+++++
+++ +++
Usage:
tux_aqfh [OPTIONS]...
Options:
-h, --help Display this help message.
-t, --tux Play as Tux (the default)
-g, --gown Play as Gown
-r, --reset Reset game to start (BEWARE!!)
-d Enable various internal debug
-D, --datadir DIR Load the game data from DIR defaults
to /usr/local/share/games/tux_aqfh
To the OP. It is build-able from the above source.
I got the same errors, so...I remarked out lines 172, 276 in gui.cxx
And that compiled.
Code:
./tux_aqfh --help
WELCOME TO: TUXEDO T. PENGUIN - A QUEST FOR HERRING.
by Steve and Oliver Baker
<sjbaker1@airmail.net>
http://tuxaqfh.sourceforge.net
#####
#######
# # #
#" #" #
Linux ##vvvvv##
Rules! ## vvv ##
# ##
## ##
### ###
+++##### ##++
++++++# #++++++
+++++++# #+++++++
+++++#######+++++
+++ +++
Usage:
tux_aqfh [OPTIONS]...
Options:
-h, --help Display this help message.
-t, --tux Play as Tux (the default)
-g, --gown Play as Gown
-r, --reset Reset game to start (BEWARE!!)
-d Enable various internal debug
-D, --datadir DIR Load the game data from DIR defaults
to /usr/local/share/games/tux_aqfh
To the OP. It is build-able from the above source.
Followed your advice but I'm still having issues. The compilation goes fine until it tries to compile in the penguin directory, to which it throws up the following lines:
Code:
Making install in penguin
make[1]: Entering directory '/home/tronnerd82/gits/tuxaqfh/penguin'
make[1]: *** No rule to make target 'configure.ac', needed by 'all-am'. Stop.
make[1]: Leaving directory '/home/tronnerd82/gits/tuxaqfh/penguin'
make: *** [Makefile:362: install-recursive] Error 1
I'm not sure if it's doing this because I have the files in a special directory for things I get off of GitHub and it expects to be somewhere else, or if there's more code that needs to be commented out or what. Not to seem noob-ish but I require further help with this, as C++ and Makefile syntax are not my specialty.
Any help is appreciated, and I'm grateful to have gotten this far. All of you guys' help means a lot.
I did not work out all of the changes needed in that code tree to make it work on a modern sound system, modern joystick etc. It was just to get it running. That executable has a segfault when I try and use some of those switches.
If you want to use this old source tree, you'll have work the problems, do some research and see what needs to be done to fix it. It may be syntax has changed, paths have changed....May take you a while.
This will be a good opportunity for you to learn. It's more enjoyable to work on something that you actually want to use, rather than just an example out of a book.
You can't, on a forum like this, help someone debug a code tree like that. The thread will be 80 posts long, and still nothing.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.