Bah comme je le dis, exécuter directement ./purebasic une fois dans le répertoire décompressé.

Une fois l'archive décompressée l'exécutable se trouve dedans.
Posons la question autrement : quel est lechemin complet et exact de la commande ./purebasic ? Est-ce /home/login/purebasic_demo/compilers/ ? Est-ce /home/login/Bureau/purebasic/compilers/ ? À moins que ça ne soit /home/login/Téléchargements/purebasic/compilers/ ?
C'est ça que j'attends.
Bah c'est ce que je te dis, ca dépend où tu décompresse l'archive en fait 😃

Chez moi je l'avais décompressé dans Programmes.(dossier que j'ai créé dans mon home)

Donc ca donnait : /home/login/Programmes/purebasic/compiler/

Voilà pour le chemin.

A côté de cela j'ai testé GLBasic, il est bien moins pénible, en plus on peut compiler direct sous windows pour linux. Sur une ubuntu ca passe niquel, sur une Fedora il faut installer quelques libs 😉 mais ca marche.

Je comprend pas ce que fout purebasic. Ils n'ont pas l'air de vouloir corriger cela.

Mais bon...
Si tu tiens toujours à PureBasic, tu peux suivre les instructions suivantes :
  1. créer un dossier dans /home/login/Programmes/purebasic/compiler/, nommé « bin » par exemple ;
  2. dans ce dossier bin, créer un fichier simplement nommé gcc contenant les lignes suivantes :
    #!/bin/bash
    
    args=$(sed "s/-arch=[^ ]*//g" <<<$@)
    /usr/bin/gcc $args
    
    N'oublie pas de le rendre exécutable :
    chmod +x /home/login/Programmes/purebasic/compiler/bin/gcc
    
  3. créer un fichier « purebasic » dans le dossier /home/login/bin/ (à créer au préalable), qui contiendrait les lignes suivantes :
    #!/bin/bash
    
    PB_HOME=/home/login/Programmes/purebasic/
    export PATH=$PB_HOME/bin/:$PATH
    
    $PB_HOME/compilers/purebasic
    
    À rendre aussi exécutable :
    chmod +x /home/compiler/bin/purebasic
    
Désormais, pour lancer purebasic, tu n'auras plus qu'à appeler la commande du même nom ainsi :
purebasic
Cette commande appelera en fait le script dans /home/login/bin (chemin faisant par défaut partie du $PATH). Celui-ci, s'il doit appeler gcc, appelera le script gcc dans /home/login/Programmes/purebasic/compiler/bin/. Celui-ci appelera lui-même le « vrai » gcc, en ignorant simplement l'option -arch si purebasic appelle le compilateur avec.
On blouse purebasic avec un « faux » gcc sans affecter le système : seul le script /home/login/bin/purebasic appellera notre « faux » gcc connui de lui seul.
Chapeau Pikachu, :pint:

De plus cette solution est relativement facile à mettre en œuvre....
Merci pour cette idée, j'essaierai pour voir 😉 Merci pour le tips ! Je te tiens au courant.