2023 log


October 22

Lost access to berry314.girod.fi: wrong certificate.
Attempted to update but failed:

The following certs are not due for renewal yet:
  /etc/letsencrypt/live/berry314.girod.fi/fullchain.pem expires on 2024-01-11 (skipped)
No renewals were attempted.
...
letsencrypt> sudo openssl x509 -enddate -noout -in live/berry314.girod.fi/fullchain.pem
notAfter=Jan 11 02:42:16 2024 GMT

April 25

Noted that I renewed the cert on April 14:

letsencrypt> sudo openssl x509 -enddate -noout -in live/berry314.girod.fi/fullchain.pem
notAfter=Jul 13 19:24:21 2023 GMT
letsencrypt> sudo ls -l live/berry314.girod.fi/fullchain.pem
lrwxrwxrwx 1 root root 46 Apr 14 21:24 live/berry314.girod.fi/fullchain.pem -> ../../archive/berry314.girod.fi/fullchain5.pem
It was just that the VPN was not set!?
No, the wifi had also failed.
Le certificat a été renouvelé le 13 octobre...

February 13

Renewed the cert:

letsencrypt> sudo openssl x509 -enddate -noout -in live/berry314.girod.fi/fullchain.pem
notAfter=May 14 18:57:09 2023 GMT

January 23

Unlikely that the build would take place in a virtual machine running raspian on arm6, but missing some basic tools.
So... let's assume the tools are meant to run on the local host and produce files compatible with the arm environment.

objdir> ~/git/gcc/configure --host=armv6l-unknown-linux-gnueabihf
objdir> egrep '[A-Z][A-Z]*"\]="armv6l-unknown-linux-gnueabihf' config.status 
S["READELF"]="armv6l-unknown-linux-gnueabihf-readelf"
S["OTOOL"]="armv6l-unknown-linux-gnueabihf-otool"
S["OBJDUMP"]="armv6l-unknown-linux-gnueabihf-objdump"
S["OBJCOPY"]="armv6l-unknown-linux-gnueabihf-objcopy"
S["WINDMC"]="armv6l-unknown-linux-gnueabihf-windmc"
S["WINDRES"]="armv6l-unknown-linux-gnueabihf-windres"
S["NM"]="armv6l-unknown-linux-gnueabihf-nm"
S["LIPO"]="armv6l-unknown-linux-gnueabihf-lipo"
S["LD"]="armv6l-unknown-linux-gnueabihf-ld"
S["DSYMUTIL"]="armv6l-unknown-linux-gnueabihf-dsymutil"
S["DLLTOOL"]="armv6l-unknown-linux-gnueabihf-dlltool"
S["AS"]="armv6l-unknown-linux-gnueabihf-as"
S["AR"]="armv6l-unknown-linux-gnueabihf-ar"
Quite a lot.

January 21

Trying the cross-compilation.


~> sudo apt install byobu
~> byobu
~> cd git
git> df -h .
Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme0n1p3  463G   86G  354G  20% /
git> git clone git://gcc.gnu.org/git/gcc.git
git> cd gcc
gcc> git checkout releases/gcc-12.2.0
...
Or undo this operation with:

  git switch -
gcc> git status
HEAD detached at releases/gcc-12.2.0
nothing to commit, working tree clean
gcc> mkdir objdir
gcc> cd ..
git> sudo apt install libgmpxx4ldbl
git> sudo apt install libgmp-dev
git> sudo apt install libmath-mpfr-perl
git> sudo apt install libmpfr-dev
git> sudo apt install mpc
git> sudo apt install libmpc-dev
git> sudo apt install flex
git> cd gcc/objdir/
objdir> ../configure --host=armv6l-unknown-linux-gnueabihf --with-gmp --with-mpfr --with-mpc
objdir> make
...
/bin/bash: line 1: armv6l-unknown-linux-gnueabihf-ar: command not found
objdir> cd ..
git> rm -rf objdir
gcc> mkdir objdir
gcc> cd objdir
objdir> ../configure --host=arm-raspberry-linux-gnu
objdir> make
...
/bin/bash: line 1: arm-raspberry-linux-gnu-ar: command not found
make[2]: *** [Makefile:254: libiberty.a] Error 127
building where objdir is a subdirectory of srcdir is unsupported.

objdir> make distclean
objdir> cd ..
gcc> rm -rf objdir/
gcc> mkdir ~/objdir
gcc> cd ~/objdir
objdir> ~/git/gcc/configure --host=armv6l-unknown-linux-gnueabihf
objdir> make
...
armv6l-unknown-linux-gnueabihf-ar rc ./libiberty.a \
...
/bin/bash: line 1: armv6l-unknown-linux-gnueabihf-ar: command not found
...
objdir> grep armv6l-unknown-linux-gnueabihf-ar Makefile 
AR = armv6l-unknown-linux-gnueabihf-ar

January 20


objdir> sudo apt install flex
objdir> ../configure && make && sudo make install
...
g++ -std=c++11  -fno-PIE -c   -g -DIN_GCC     -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common -Wno-unused -DHAVE_CONFIG_H -I. -I. -I../../gcc -I../../gcc/. -I../../gcc/../include -I../../gcc/../libcpp/include -I../../gcc/../libcody  -I../../gcc/../libdecnumber -I../../gcc/../libdecnumber/dpd -I../libdecnumber -I../../gcc/../libbacktrace   -o gimple-match.o -MT gimple-match.o -MMD -MP -MF ./.deps/gimple-match.TPo gimple-match.cc
g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
Not enough memory... 430Mb — dies at 75%.
Cross-compile on the laptop? There is 8Gb free out of 15Gb total)

January 19

Updated/upgraded.


~> sudo apt install byobu
~> byobu
~> cd git
git> git clone git://gcc.gnu.org/git/gcc.git
...
Receiving objects: 100% (2815450/2815450), 1.07 GiB | 758.00 KiB/s, done.      
Resolving deltas:  86% (1993453/2307360)
...
Resolving deltas: 100% (2307360/2307360), done.                                
Checking out files: 100% (122619/122619), done.
git> cd gcc
gcc> git branch -a | egrep releases/gcc-1.*
  remotes/origin/releases/gcc-10
  remotes/origin/releases/gcc-11
  remotes/origin/releases/gcc-12
gcc> git tag -l | grep releases/gcc-12
releases/gcc-12.1.0
releases/gcc-12.2.0
gcc> git checkout releases/gcc-12.2.0
gcc> df -h .
Filesystem      Size  Used Avail Use% Mounted on
/dev/root        27G   17G  8.2G  68% /
gcc> mkdir objdir
gcc> cd objdir
objdir> ../configure
...
configure: error: Building GCC requires GMP 4.2+, MPFR 3.1.0+ and MPC 0.8.0+.
Working under byobu, following instructions.

objdir> sudo apt install gmp
E: Unable to locate package gmp
objdir> cd ../..
git> git clone [email protected]:raspbian-packages/gmp.git
git> cd gmp
gmp> ./configure && make
...
checking for suitable m4... configure: error: No usable m4 in $PATH or /usr/5bin (see config.log for reasons).
gmp> sudo apt install m4
gmp> sudo apt-get install automake autoconf libtool texinfo
...
gmp> sudo make install
gmp> make clean
gmp> cd ~/tmp
tmp> wget https://www.mpfr.org/mpfr-current/mpfr-4.2.0.tar.xz
tmp> tar -Jxf mpfr-4.2.0.tar.xz
mpfr-4.2.0> autoreconf -f -i .
mpfr-4.2.0> ./configure
mpfr-4.2.0> make
mpfr-4.2.0> sudo make install
mpfr-4.2.0> cd ..
tmp> wget https://ftp.gnu.org/gnu/mpc/mpc-1.3.1.tar.gz
tmp> tar zxf mpc-1.3.1.tar.gz 
tmp> cd mpc-1.3.1/
mpc-1.3.1> rm ../mpc-1.3.1.tar.gz 
mpc-1.3.1> ./configure && make && sudo make install
mpc-1.3.1> cd ../../git/gcc/objdir
objdir> ../configure && make
...
/home/marc/git/gcc/missing: 81: /home/marc/git/gcc/missing: flex: not found
...
g++: error: gengtype-lex.cc: No such file or directory
g++: fatal error: no input files
compilation terminated.

January 18


public_html> type c++
c++ is /usr/bin/c++
public_html> c++ --version
c++ (Raspbian 8.3.0-6+rpi1) 8.3.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

public_html> cd ../git
git> df -h .
Filesystem      Size  Used Avail Use% Mounted on
/dev/root        27G   15G   11G  59% /
git> git clone git://gcc.gnu.org/git/gcc.git
Unfortunately, it aborted on timeout...
byobu?
2022, log
Marc Girod
Wed Jan 18 08:53:39 2023