OK, here we go - here's the "recipe" for a fresh build of xiphos on Debian Stable.
Assuming all of the dependencies are correctly solved here - This should work flawlessly for Mint Debian edition and will probably work with Ubuntu and Ubuntu based editions of Mint too.
NOTE: What follows is NOT a script - it's definitely more of a recipe/process.
I'd recommend entering, or copy/pasting each of the commands into a terminal and checking that they all succeed.
Also - as a programmer - my system is pretty dirty. I have a lot of libraries and tools already installed, so if anything is missing from the list - I apologise.
Find a nice empty directory somewhere in your file-system ready to start.
Then do the following:
# 1. Install necessary build-tools:
# 2. Install build-deps for gtkhtml:
# 3. Clone gtkhtml source code:
# 4. Configure gtkhtml:
NOTE:
If either of the following two steps fails, let me know.
You will need to install some extra packages via apt and run the failed command again!
# 4.a. Run autogen.sh: (This creates the ./configure script)
# 4.b. Run configuration script: (this generates the Makefile)
# 5. Build and install libgtkhtml:
# 5.a. Run make:
NOTE: If the above fails (it shouldn't) - we have a problem to fix....Let me know!
If it succeeds:
# 5.b. Install libgtkhtml:
# 6. Install build deps for xiphos
# 7. Clone xiphos source code
# 8. build and install xiphos
# 8.a. Configuration - if this fails, we have missing libs to install - let me know
Once the above step succeeds:
# 8.b. Build Xiphos:
# 8.c. Install Xiphos:
DONE!
NOTE: As mentioned in my other post - the build system for Xiphos does NOT appear to have an uninstall target.
Unless I've missed something, the only way to uninstall it after installing from source is to manually remove everything it installs... :/
Which seems a little misguided/malicious on the part of the developers.
Anyway - it configured and built for me using this process.
Whether or not it will run is anybody's guess. I didn't try installing it after building it, for the reason above. I tried running it locally, but it crashed with an error. But I think that's because I hadn't installed it - so things weren't where the executable was expecting them to be! But if it is installed, I imagine it will probably run!
Assuming all of the dependencies are correctly solved here - This should work flawlessly for Mint Debian edition and will probably work with Ubuntu and Ubuntu based editions of Mint too.
NOTE: What follows is NOT a script - it's definitely more of a recipe/process.
I'd recommend entering, or copy/pasting each of the commands into a terminal and checking that they all succeed.
Also - as a programmer - my system is pretty dirty. I have a lot of libraries and tools already installed, so if anything is missing from the list - I apologise.
Find a nice empty directory somewhere in your file-system ready to start.
Then do the following:
# 1. Install necessary build-tools:
Bash:
sudo apt install git cmake build-essential
# 2. Install build-deps for gtkhtml:
Bash:
sudo apt install libgtk-3-dev libgail-3-dev libenchant-dev iso-codes gnome-icon-theme gnome-common gsettings-desktop-schemas gsettings-desktop-schemas-dev
# 3. Clone gtkhtml source code:
Bash:
git clone https://github.com/chopins/gtkhtml.git
cd gtkhtml
# 4. Configure gtkhtml:
NOTE:
If either of the following two steps fails, let me know.
You will need to install some extra packages via apt and run the failed command again!
# 4.a. Run autogen.sh: (This creates the ./configure script)
Bash:
./autogen.sh
# 4.b. Run configuration script: (this generates the Makefile)
Bash:
./configure
# 5. Build and install libgtkhtml:
# 5.a. Run make:
Bash:
make
If it succeeds:
# 5.b. Install libgtkhtml:
Bash:
sudo make install
cd ../
# 6. Install build deps for xiphos
Bash:
sudo apt build-dep xiphos xiphos-data
sudo apt install appstream-util yelp yelp-tools minizip libminizip-dev
# 7. Clone xiphos source code
Bash:
git clone https://github.com/crosswire/xiphos.git
cd xiphos
mkdir build
# 8. build and install xiphos
# 8.a. Configuration - if this fails, we have missing libs to install - let me know
Bash:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DGTKHTML=ON
Once the above step succeeds:
# 8.b. Build Xiphos:
Bash:
make -C build
# 8.c. Install Xiphos:
Bash:
sudo make -C build install
DONE!
NOTE: As mentioned in my other post - the build system for Xiphos does NOT appear to have an uninstall target.
Unless I've missed something, the only way to uninstall it after installing from source is to manually remove everything it installs... :/
Which seems a little misguided/malicious on the part of the developers.
Anyway - it configured and built for me using this process.
Whether or not it will run is anybody's guess. I didn't try installing it after building it, for the reason above. I tried running it locally, but it crashed with an error. But I think that's because I hadn't installed it - so things weren't where the executable was expecting them to be! But if it is installed, I imagine it will probably run!
Last edited: