Monday 13 July 2020

Building GCC for RISC-OS

The instructions at https://www.riscos.info/index.php/Using_GCCSDK are OK but you need to change the URL for the PPL library to https://www.bugseng.com/external/ppl/download/ftp/releases/1.2/ppl-1.2.tar.gz

$ mkdir gccsdk $ cd gccsdk $ svn co svn://svn.riscos.info/gccsdk/trunk/autobuilder/ autobuilder $ svn co svn://svn.riscos.info/gccsdk/trunk/gcc4/ gcc4 $ cd gcc4

Before compiling, you need to edit Makefile and change the PPL URL from

ftp://ftp.cs.unipr.it/pub/ppl/releases/$(PPL_VERSION)/ppl-$(PPL_VERSION).tar.gz

to

https://www.bugseng.com/external/ppl/download/ftp/releases/$(PPL_VERSION)/ppl-$(PPL_VERSION).tar.gz

Once the change has been made you can continue building

$ ./build-world

Once gcc has built (it takes a long time and a few GB of disk space), you're ready to build the packages.

To get autobuilder to compile the packages, you either need rman (I don't know where to get it), or apply the following patch to autobuilder/build

--- build (revision 7339) +++ build (working copy) @@ -76,7 +76,7 @@ popd fi fi - for build_prog in cvs svn wget autoconf automake rman realpath pkg-config doxygen xgettext unzip autoconf2.13 flex bison gperf glib-genmarshal xsltproc intltoolize automake-1.11 ; do + for build_prog in cvs svn wget autoconf automake realpath pkg-config doxygen xgettext unzip autoconf2.13 flex bison gperf glib-genmarshal xsltproc intltoolize automake-1.11 ; do if ! type $build_prog > /dev/null 2>&1 ; then echo "Autobuilder: $build_prog not found; is it installed on your path?" exit 1;

Or you can download my latest version from Git hub. Here you can also find the autobuilder files used to port libpopt and libsmb2 to RISC-OS.

And replace the rman commands in build/env/ro-install (lines 141 and 144 and in some of the packages setvars scripts) with groff -mandoc -Thtml.

Setting up samba as a server for RISC-OS clients

Currently the RISC-OS Lan Manager !OmniClient protocol does not support SMB2 or later protocols.

The following smb.conf file will allow RISC-OS clients to connect using the NT1 (CIFS) protocol. It exports users home folders and configured printers.

# Run 'testparm' to verify the config is correct after you modified it. [global] workgroup = WORKGROUP security = user ntlm auth = ntlmv1-permitted client min protocol = NT1 server min protocol = NT1 passdb backend = tdbsam hosts allow = 192.168.200. printing = cups printcap name = cups load printers = yes cups options = raw [homes] comment = Home Directories valid users = %S, %D%w%S browseable = No read only = No inherit acls = Yes [printers] comment = All Printers path = /var/tmp printable = Yes create mask = 0600 browseable = No [print$] comment = Printer Drivers path = /var/lib/samba/drivers write list = @printadmin root force group = @printadmin create mask = 0664 directory mask = 0775