I am using the source code and can get it to compile, but I’m trying to make and install the binaries in Debian Stretch. I can seem to be able to use the ‘make’ command and even the ‘make copyfiles’ with no problems. But I can’t seem to get it to produce the binaries to install and be able to play.Also how do I use the COPYDIR to point to where my pak files are. Anyone help a brother out?
Dependencies for compiling ioquake3 on Debian:
sudo apt-get install build-essential libsdl2-dev libgl1-mesa-dev
With quake3 data already installed at
/path/to/quake3/baseq3/pak0.pk3 do the following to install ioquake3 binaries:
make copyfiles COPYDIR=/path/to/quake3
I have all the dependences and such. I can compile it and get the ioquake3.x86 file to spit out, but getting the system to install the executable into the directory it need to be in to launch correctly is i guess the issue that i’m getting at. I can’t get it to place the files the correct spots and launch from the terminal correctly. the only way i can get it to launch is being in the directory in spits out in and having the binaries in place where they should be. If i move out of the directory that ioquake3.x86 initially appears in when compiled, i then can’t get it to launch. Hope this is not all to confusing.
Can you post console logs of running from ioq3 build directory and running from another directory?
I can’t get it to run other then right clicking and using the open in terminal option to get it to run. If I try to run it from anywhere else I get the command not found schtick. where would the logs be generated to so i can post them. Believe me I would love to get this up and running. The standard debian packages you get through the synapsis manager for ioq3 doesn’t play well on my system due to glitchy graphics. when I run the build I make from source it plays like a fine breeze. I have patience guys so fire away the ideas…
The terminal can find the program if you specify the relative path to the program…
cd /path/to/quake3/ ./ioquake3.x86_86
…or when you specify the absolute path.
If you want to be able to run
ioquake3 as a command in the terminal you can create a shell script and place it in a directory listed in the PATH environment variable. You can see the list by running
echo $PATH in a terminal.
I personally use a shell script located at
/home/$USERNAME/bin/ioquake3 containing the following text
#!/bin/sh /path/to/quake3/ioquake3.x86_86 $*
Directions for creating the script:
- Open your home directory in a file browser and create a directory named “bin” if it does not exist.
- Open a text editor, copy and paste the above commands (correct the path to quake3) and save it as “ioquake3” (no file extension) in the bin directory in your home directory.
- In the file browser open the bin directory in your home directory. Right click ioquake3 and click Properties. Change to the Permissions tab. Check the box for “allow executing as a program”.
- You may need to close and re-open the terminal for /home/$USERNAME/bin to be added to PATH.
ioquake3in the terminal.
Creating shell script half works. I can execute it when i double click the script, but trying to execute it through terminal without directly linking to the path gets me no command found. I put the script in the /home/user/bin like you mentioned earlier. Dunno why it wont execute through terminal like the script
Does this command display your script?
Is /home/$USERNAME/bin listed in
echo $PATH? If not, have you restarted your terminal since creating the bin directory?