Pagina 1 di 1

Ancora sulla compilazione a 32bit con multilib

Inviato: sab 30 gen 2016, 18:24
da aschenaz
Ho scritto "ancora" nel titolo, ma in effetti è la prima volta che uso le multilib. :)
Finora non ne ho avuto mai la necessità, ma adesso mi hanno passato una vecchia stampante laser Canon (LBP-810), che non va più coi sistemi Windows dal 7 in poi. Voglio provare a farla funzionare sotto Slackware (qualcuno in passato c'è riuscito...).
Da quanto ho letto (anche su vecchi topic di questo forum) potrebbe funzionare installando i driver cndrvcups-common e cndrvcups-capt.
Ma si tratta di software a 32bit, per cui ho scaricato sorgenti e slackbuild e mi accingo a compilare.
Naturalmente, ho già installato tutta la multilib-stuff di Alien.
A quanto ho capito, dovrei modificare gli slackbuild in modo da forzare l'architettura. Ma, prima di fare qualche scemenza delle mie, preferisco chiedere.
Questo è l'header dello sb:

Codice: Seleziona tutto

PRGNAM=cndrvcups-common
VERSION=${VERSION:-2.60}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}

if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) ARCH=i486 ;;
    arm*) ARCH=arm ;;
       *) ARCH=$( uname -m ) ;;
  esac
fi

CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

if [ "$ARCH" = "i486" ]; then
  SLKCFLAGS="-O2 -march=i486 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O2 -march=i686 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
  LIBDIRSUFFIX="64"
else
  SLKCFLAGS="-O2"
  LIBDIRSUFFIX=""
fi
È sufficiente togliere quel 64 in LIBDIRSUFFIX="64"?

Re: Ancora sulla compilazione a 32bit con multilib

Inviato: dom 31 gen 2016, 12:13
da conraid
Mai usate le multilib, ma leggendo il readme di Alien devi anche eseguire
. /etc/profile.d/32dev.sh
http://www.slackware.com/~alien/multilib/

Re: Ancora sulla compilazione a 32bit con multilib

Inviato: dom 31 gen 2016, 14:52
da aschenaz
conraid ha scritto:Mai usate le multilib, ma leggendo il readme di Alien devi anche eseguire
. /etc/profile.d/32dev.sh
http://www.slackware.com/~alien/multilib/
Sì, questo va eseguito prima di compilare per creare (mi pare) delle variabili d'ambiente...
Ma per lo slackbuild basta togliere il 64?

Re: Ancora sulla compilazione a 32bit con multilib

Inviato: dom 31 gen 2016, 15:28
da conraid
No, perché non compili x86_64, ma 486, o 586 in current, o 686, insomma, non prende la variabile impostata per x86_64
Siccome sei su architettura x86_64, devi forzare ARCH senza farla prendere automaticamente.

Re: Ancora sulla compilazione a 32bit con multilib

Inviato: lun 1 feb 2016, 0:28
da ZeroUno
aschenaz ha scritto:Ma si tratta di software a 32bit, per cui ho scaricato sorgenti e slackbuild e mi accingo a compilare.
scusa eh, ma se hai i sorgenti che problemi ci sono a compilare a 64bit?

Re: Ancora sulla compilazione a 32bit con multilib

Inviato: lun 1 feb 2016, 8:38
da aschenaz
Dici che mi sto creando problemi inutili?

Mi riferisco a questa parte del README:
This package contains parts that are binary only and compiled on a 32bit
system. To get it up and running on 64bit, you will need multilib installed.
E nelle istruzioni per l'abilitazione delle multilib, dice di modificare gli sb, prima di compilare...
Siccome è una cosa che non ho mai fatto (quella di operare sotto multilib, intendo) e dato che io rimango un eterno niubbo, volevo essere sicuro...

In effetti, ho già tentato la compilazione diretta: apparentemente va a buon fine, installo i pacchetti creati, ma la stampante non dà segni di vita (pur seguendo pari pari un vecchio post relativo, però, alla Slackware a 32bit...).

Re: Ancora sulla compilazione a 32bit con multilib

Inviato: lun 1 feb 2016, 8:46
da ZeroUno
This package contains parts that are binary only and compiled on a 32bit
system.
E ti pareva..

No, non ho mai compilato sotto multilib.