Newsgroup: it.comp.os.linux.sys
Titolo: compilare il kernel su macchine diverse

Salute a tutti, nei giorni scorsi avevo postato un messaggio su iniziare
forse non adatto al gruppo e quindi lo ripropongo qui :):
Salute a tutti. Ho un mezzo dubbio ;)
Ho, su due differenti macchine due versioni diverse della debian (woody da
una parte  e sarge dall'altra);  posso compilare un kernel  sulla macchina
con  sarge  e poi  trasferirlo  sulla  woody?  Ovviamente  il  "trasporto"
comprende sia System.Map  che i moduli e i parametri  di compilazione sono
quelli della  macchina che ospiterà il  kernel.  Ho fatto qualche  prova e
non sembra  dare problemi ma  vorrei il  conforto di qualcuno  che conosce
l'argomento.   Se  lo potessi  fare  regolarmente  avrei il  vantaggio  di
sfruttare la maggiore  velocità della macchina da  sviluppo e alleggerirei
l'altra di tutti i programmi di sviluppo che non mi servirebbero più.
Ciao & TIA
Antonio
p.s. chiedo scusa per il doppio post.
-- 
  /¯\  |¯ \/ ¯|(*** !!! attenzione:  campo From alterato !!! ***)
 /¯_¯\ |¯|\/|¯| )----------------------------------------------(
/_/ \_\|_|  |_|(a_m_a_d_e_s_a_n_i_chiocciola_l_i_b_e_r_o_dot_i_t)

Direi proprio di sě a patto che non ci siano dipendenze verso librerie
differenti.


Ciao, grazie per la risposta. Il mio dubbio verte proprio sul fatto che
tra una sarge ed una woody vi possano essere situazioni che possono
creare problemi a quello che vorrei fare.
Hai qualche esempio di "librerie differenti" che mi possa essere utile
per capire come mi devo comportare?
Ciao & TIA
Antonio


 l'altra di tutti i programmi di sviluppo che non mi servirebbero più.
Si e` possibile, non solo, potresti persino
compilare per PPC su x86.
La cosa che devi assicurarti e` che i vari
parametri/driver sia corretti per il sistema
target, il resto viene da se, esattamente
come lo hai descritto.
Ovviamente, le feature del kernel che vai ad
abilitare potrebbero necessitare di tool
userland, che devono essere presenti nella
macchina target.
Ad es. se abiliti il supporto NFS, dovrai
anche avere i nfs-tool compatibili.
bye,
-- 
   Piergiorgio Sartor

 quelli della  macchina che ospiterà il  kernel.
Perchè complicarti la vita? usa make-kpkg, crea il deb e installalo sulla
macchina ospite :)
-- 
| /
| \Byte - Andrea Briganti - kbyte(aaattt)
despammed.com
CSLug member: 
http://cslug.linux.it
 - JID: 
kb...@jabber.linux.it
***Il sapere umano appartiene al mondo


Grazie Piergiorgio, ora le cose cominciano a chiarirsi. Quindi se volessi,
su un x86 compilare per un ppc, sarebbe necessario dire al compilatore che
la macchina target è un ppc, giusto?  Considerando che ho un powerbook3400 e
quando compilo il kernel ci vogliono in tutto 4 ore, sarebbe un bel vantaggio
riuscire ad utilizzare questo sistema.  Bisogna a questo punto studiarsi le
opzioni del compilatore e modificare il Makefile. Ciao e grazie
Antonio


 opzioni del compilatore e modificare il Makefile. Ciao e grazie
Piu` che altro devi configurare il kernel per PPC,
il resto dovrebbe essere gia` previsto.
bye,
-- 
piergiorgio


Ciao,  riprendo l'argomento  perché c'è  qualche cosa  che mi  sfugge.  Ho
creato una  dir dove ho  scompattatato il kernel da  una tarbal poi  vi ho
trasferito il  .config della macchina target  a questo punto ho  provato a
lanciare make  oldconfig ed ho  avuto la sorpresa  che non mi  presenta le
opzioni per l'architettura ppc ma solo quelle per la i386.  Ho guardato in
Makefile ed ho trovato:
ARCH := $(shell uname -m | sed -es/i.86/i386/ -e s/sun4u/sparc64/ -e s/arm.*/arm/ -e s/sa110/arm/)
ovvero va a vedere su che  architettura il sistema lavora.  La conclusione
è  che   sembra  di  rifiutare   di  creare  una  immagine   per  un'altra
architettura.  Se ad esempio lancio make  dep, mi prepara per compilare su
un i386.  Evidentemente manca qualche cosa di importante.
Che sarà mai?
Attendo fiducioso.
Ciao & TIA
Antonio
p.s.  Se lancio make-kpkg mi parte con una richiesta di precisare il
tipo di processore all'interno della famiglia i386.
