Bonjour,
Je désire installer sous CentOS tournant en 64 bits une application Oracle en 32 bits.
Je suis tombé sur ce site http://ftp.portera.com/Linux/Oracle-...nux-x86_64.htm qui explique comment faire (modifier les flags de gcc et de ld pour créer un shell en 32 bits) mais cependant j'ai quelques soucis dans la compréhension du script qu'il fournit :
Cette version du script est pour Suse donc je me demande déjà si j'ai des modifications à faire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 #!/bin/sh # # This script modifies gcc and ld and create bash32 shell # if [ x /usr/bin/gcc.bin ] then echo gcc.bin already exists. Verify that you want to move gcc into gcc.bin , echo remove gcc.bin, and run script again exit 1 fi cd /usr/bin mv gcc gcc.bin cat > gcc <<\EOF #!/bin/sh exec /usr/bin/gcc.bin $GCC_FLAGS $@ EOF chmod a+x gcc mv ld ld.bin cat > ld <<\EOF #!/bin/sh exec /usr/bin/ld.bin $LD_FLAGS $@ EOF cat > bash32 <<\EOF #!/bin/sh export GCC_FLAGS=-m32 export LD_FLAGS=-melf_i386 exec linux /bin/bash $@ EOF
Ensuite voilà mes quelques petites questions :
1) La commande pour tester si le fichier existe :
retourne une erreur -x n'est pas reconnu comme option. J'ai également essayé -f sans succés. Existe-t-il une commande simple comme "test" pour éviter de vérifier à la main s'il existe ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part if [ x /usr/bin/gcc.bin ]
2) Que signifie le codeavec en particulier l'antislash
Code : Sélectionner tout - Visualiser dans une fenêtre à part <<\EOF
3) Enfin, je ne comprend pas le "linux" dansVoilà, j'ai déjà recherché ce que je me demande dans des tutos sur les scripts shell mais sans trop de succés.
Code : Sélectionner tout - Visualiser dans une fenêtre à part exec linux /bin/bash $@
Merci pour votre aide![]()
Partager