NetSurf 3.11 compilation for classic Ubuntu
Posted: Wed Jan 21, 2026 5:45 am
Hello all,
I made some progress in preparation of NetSurf 3.11 code to be compiled on Ubuntu 8.04's development toolchain. It basically required few other libraries compiled from sources and prepared (Bison, libpng etc.) - all of them went OK. Also all prerequisites seem to be met, only blocking point is described below.
Why would one do that you may ask. Why to prepare a B-class web browser to be used on a 18-year old Linux distro on an old ThinkPad
Well, because that ThinkPad just flies with 8.04LTS and only problem I have with it is you can't use any browser shipped with it - certificates are revoked years ago (essentially means all HTTPS sites won't work properly) and some sites are also reporting I am using unsupported browser and won't load at all. NetSurf is the option how to comfortably browse internet again. Despite many reports saying 3.11 can't get compiled on 8.04LTS, I think I am close to do that.
Now I am facing problem below. Install utility on 8.04LTS doesn't support -C parameter and when the install script provides this:
of course the install fails. As this operation is essentially not important for compilation and installation process of NetSurf 3.11, I am trying to bypass it but can't find
which script is trying to execute this install -C -m 644 of the nslog.h headers. My intention is to alter the script so the headers will be used without this -C which means those will be always copied to the destination regardless of the differences etc. Can anyone help me to review the NetSurf 3.11 sources and help to eliminate this -C checking? Many thanks.
I made some progress in preparation of NetSurf 3.11 code to be compiled on Ubuntu 8.04's development toolchain. It basically required few other libraries compiled from sources and prepared (Bison, libpng etc.) - all of them went OK. Also all prerequisites seem to be met, only blocking point is described below.
Why would one do that you may ask. Why to prepare a B-class web browser to be used on a 18-year old Linux distro on an old ThinkPad
Now I am facing problem below. Install utility on 8.04LTS doesn't support -C parameter and when the install script provides this:
Code: Select all
install -C -m 644 include/nslog/nslog.h /home/thinkpadder/dev/netsurf/netsurf-all-3.11/inst-gtk2/include/nslogCode: Select all
thinkpadder@thinkpadder-laptop:~/dev/netsurf/netsurf-all-3.11$ sudo make install
mkdir -p /home/thinkpadder/dev/netsurf/netsurf-all-3.11/inst-gtk2/include
mkdir -p /home/thinkpadder/dev/netsurf/netsurf-all-3.11/inst-gtk2/lib
mkdir -p /home/thinkpadder/dev/netsurf/netsurf-all-3.11/inst-gtk2/bin
make install --directory=buildsystem HOST=i486-linux-gnu PREFIX=/home/thinkpadder/dev/netsurf/netsurf-all-3.11/inst-gtk2 Q=@ WARNFLAGS='-Wall -W -Wno-error' DESTDIR=
make[1]: Entering directory `/home/thinkpadder/dev/netsurf/netsurf-all-3.11/buildsystem'
mkdir -p /home/thinkpadder/dev/netsurf/netsurf-all-3.11/inst-gtk2/share/netsurf-buildsystem/makefiles /home/thinkpadder/dev/netsurf/netsurf-all-3.11/inst-gtk2/share/netsurf-buildsystem/testtools /home/thinkpadder/dev/netsurf/netsurf-all-3.11/inst-gtk2/share/netsurf-buildsystem/citools
for M in Makefile.top Makefile.tools Makefile.subdir Makefile.pkgconfig Makefile.clang Makefile.gcc Makefile.norcroft Makefile.open64; do \
cp makefiles/$M /home/thinkpadder/dev/netsurf/netsurf-all-3.11/inst-gtk2/share/netsurf-buildsystem/makefiles/; \
done
for T in testrunner.pl; do \
cp testtools/$T /home/thinkpadder/dev/netsurf/netsurf-all-3.11/inst-gtk2/share/netsurf-buildsystem/testtools/; \
done
for C in jenkins-build.sh; do \
cp citools/$C /home/thinkpadder/dev/netsurf/netsurf-all-3.11/inst-gtk2/share/netsurf-buildsystem/citools/; \
done
make[1]: Leaving directory `/home/thinkpadder/dev/netsurf/netsurf-all-3.11/buildsystem'
make install --directory=libnslog HOST=i486-linux-gnu PREFIX=/home/thinkpadder/dev/netsurf/netsurf-all-3.11/inst-gtk2 Q=@ WARNFLAGS='-Wall -W -Wno-error' DESTDIR=
make[1]: Entering directory `/home/thinkpadder/dev/netsurf/netsurf-all-3.11/libnslog'
install -C -m 644 include/nslog/nslog.h /home/thinkpadder/dev/netsurf/netsurf-all-3.11/inst-gtk2/include/nslog
install: invalid option -- C
Try `install --help' for more information.
make[1]: *** [install] Error 1
make[1]: Leaving directory `/home/thinkpadder/dev/netsurf/netsurf-all-3.11/libnslog'
make: *** [/home/thinkpadder/dev/netsurf/netsurf-all-3.11/inst-gtk2/build-stamp] Error 2