Installasjon av lrzsz
Installer flere oppdateringer for å fikse diverse konfigurasjons,
bygge og sikkerhetsproblemer:
patch -Np1 -i ../lrzsz-autotools.patch &&
patch -Np1 -i ../lrzsz-implicit-decl.patch &&
patch -Np1 -i ../lrzsz-0.12.20-automake-1.12.patch &&
patch -Np1 -i ../lrzsz-0.12.20-automake-1.13.patch &&
patch -Np1 -i ../lrzsz-0.12.20-gettext-0.20.patch &&
patch -Np1 -i ../lrzsz-0.12.20-AR.patch &&
patch -Np1 -i ../lrzsz-0.12.20-configure-clang16.patch &&
patch -Np1 -i ../lrzsz-0.12.20-gettext-0.22.patch &&
patch -Np1 -i ../lrzsz-0.12.20-c99.patch &&
patch -Np1 -i ../lrzsz-0.12.20-fix-integer-overflow.patch &&
patch -Np1 -i ../lrzsz-0.12.20-c23.patch
Fjern en unødvendig prototype som forårsaker en byggefeil:
for i in src/l{r,s}z.c; do
sed -i '/extern\ char\ \*strstr/d' $i
done
Legg til og fjern filer, og generer deretter autoconf filene:
touch config.rpath &&
rm -vf missing &&
rm -vf acconfig.h &&
autoreconf -fiv -I/usr/share/gettext/m4
Installer lrzsz ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-nls &&
make
Nå som root bruker:
make install &&
for x in {r,s}{b,x,z} ; do
ln -svf l${x} /usr/bin/${x} &&
ln -svf l${x:0:1}z.1 /usr/share/man/man1/${x}.1 &&
[ "${x:1:1}" = "z" ] || ln -svf l${x:0:1}z.1 /usr/share/man/man1/l${x}.1
done
Parameterforklaringer
touch config.rpath:
Denne kommandoen oppretter en tom fil som automake ønsker å bruke, men
mangler i distribusjonen.
rm -vf missing: Denne
kommandoen sletter missing filen,
siden den er for gammel til å brukes. automake, når du utfører
autoreconf, vil
generere denne filen som vil være gjeldende.
rm -vf acconfig.h:
autoheader liker ikke
acconfig.h filen som finnes, så denne
kommandoen sletter den.
--disable-nls: Denne
parameteren deaktiverer NLS støtte ettersom den ikke fungerer for
denne pakken på grunn av manglende filer.
for i in {r,s}{b,x,z} ;
do...: Denne kommandoblokken oppretter
kompatibilitetssymbolske lenker for den originale rzsz pakken, som
er nødvendig for minicom-2.11.