On 02/08/2020 18:46, Aleksey Murushkin wrote:
>>Are you following our quick-start guide? If so, which step
did you get
to before the problem appeared?
I followed this guide
and I got this error when run $ make TARGET=riscos
Did you set the correct HOST when sourcing env.sh?
It will report the settings it uses when you source the script.
>>What operating system are you building on?
I used Ubuntu 16
>>Did you download our toolchain and build environment for targeting RISC
OS, or are you using stock GCCSDK?
I am using GCCSDK
NetSurf requires more than just a working cross compiler to build. While
it is possible to build using a vanilla GCCSDK (assuming that the
GCCSDK_INSTALL_CROSSBIN and GCCSDK_INSTALL_ENV variables are exported
and contain the appropriate paths), at the very least you will need to
ensure that all the third-party libraries that NetSurf depends on (what
we term the NetSurf SDK) are compiled and installed in wherever
If you have a working GCCSDK cross compiler for RISC OS, then you can
build the SDK yourself by cloning the toolchains git repository and then
doing something like
where you have ensured that GCCSDK_INSTALL_CROSSBIN and
GCCSDK_INSTALL_ENV point at the correct place for your environment.
Because the above is both fiddly and time consuming (and because we
already do this ourselves automatically as part of NetSurf's Continuous
Integration environment), we publish tarballs containing pre-built
GCCSDK and NetSurf SDK:
Assuming that you are running on an x86_64 platform, then the tarball
you want is
(which is the most current toolchain at the time of writing -- note that
the "49" in the filename is the identifier of the CI job that built the
toolchain and thus it will change whenever the toolchain is rebuilt). It
is intended to be unpacked to / so that the toolchain is installed in
With a properly installed toolchain and SDK, you may then continue with
the instructions in the quick start document (remembering to set HOST
correctly so that it wants to build for RISC OS). Note that env.sh
assumes that cross compilers are either installed in /opt/netsurf or can
be found on the PATH so, if you have not installed either our pre-built
tarball or installed GCCSDK into /opt/netsurf, then you must ensure that
your GCCSDK_INSTALL_CROSSBIN directory is on the PATH before sourcing
I feel like I need to install missed lib but i dont understand
which one it is. And do i need to install it to linux platform or
compile it with autobuilder for riscos for example?
All NetSurf dependencies need to be built for the platform you intend to
run NetSurf on. So, as you want to build NetSurf for RISC OS, you must
ensure that you have all the dependencies built for RISC OS.