On Mon, Jun 28, 2021 at 04:00:27AM +0100, Aaron Sloman wrote:
>
> In the past, popvision was distributed with the relevant pre-compiled C
> libraries included. So after testing that they work on both my machines I've
> included newly compiled versions in the current popvision package.
>
> If they don't work on a particular linux version they can be rebuilt following
> the instructions in $usepop/pop/packages/popvision using the command
> $usepop/pop/packages/popvision/com/mkpopvision (after checking that required
> linux libraries have been installed).
Binaries for popvision are problematic: we want them optimized for
speed, but in such case C compiler will use new instructions
available only on some processors. So they may fail on different
machine.
BTW: Patches for popvion were posted last.
> I have not yet altered the download mechanism to use the latest changes that
> enable poplog to be installed easily on both older and newer versions of
> linux,
> but since it seems that relatively few are now running kernel 5.7 or later,
> the
> default download package still provides an oldpop11 (required for building the
> poplog installation) that works on older kernels.
>
> The recent change to
>
> $usepop/pop/extern/lib/c_core.c
>
> works with older kernels, but different versions of oldpop11 are needed
> for boostrapping the build process on old and new kernels.
No. You can use the same version. If you really want to support
older system (older libc) you need to take account of what I wrote
in 2019:
- On new Linux systems we should probably use '-Wl,--hash-style=both'
whem linking. Otherwise linked Poplog will not start
on older systems (this happens with recent Birmingham
tarballs). But '-Wl,--hash-style=both' is likely to cause
trouble when link is done on old system.
Corepop with patch, _not linked to ncurses_ and linked as
above should work on wide range of machine.
--
Waldek Hebisch