Bonjour à tous,

Pendant longtemps j'ai utilisé Purebasic un langage que j'apprécie énormément par sa facilité, et ses possibilités quand il s'agit de programmer des logiciels, soit en passant par des API soit directement, et pour son utilisation facile de l'openGL pour des jeux en 2D par ex.

Il existe pour Windows (évidemment) mais il est aussi compilé pour Linux. Or pour Linux, je n'arrive pas à faire tout ce qu'il demande pour le faire marcher. Je vais essayer d'être le plus précis possible car c'est un logiciel sous licence, mais il existe une version d'essai dont je vous donnerai le lien.

Dans le package j'ai un fichier checkinstall qui me permet de voir ce qu'il me manque, le soucis c'est ce que n'est pas super explicite et je ne sais pas quels paquets installer.

La dernière fois que j'ai voulu essayer, c'était sous Linux Mint et tout ce que j'ai gagné, c'est de péter mon thème de bureau (en gros je me suis retrouvé avec des fenêtres on se serait cru à la dernière guerre). Donc j'ai du installer un truc qu'il ne fallait pas.

Je vous explique d'abord, et je vous donner le fichier de démo. Dans le package j'ai aussi donc un readme et un install pour savoir ce qu'il faut donc je vous quote les parties les plus intéressantes :

Pré-requis
- gcc
- GTK+ 2.0 devel (and optionally GTK+ 1.2 devel for old application support)
- SDL 1.2 devel
- libstdc++ devel
- iodbc and iodbc-devel to be able to use the Database commands (see www.iodbc.org)
- libgtkembedmoz.so shoud be installed to have the WebGadget() working (comes with the Mozilla package).
Once the Mozilla package is installed, you could have to do an ldconfig after have added the right path
(/usr/lib/mozilla.x.x) to /etc/ld.so.config.
- xine and xine-devel for the Movie commands
- libgnomeprintui2.2 and libgnomeprintui2.2-devel for the print commands

Note: a script which validate if all the development libraries are correctly installed is available
in the main purebasic directory. To execute it, type:

./checkinstall.sh
Comme je vous l'ai dit pour moi le checkinstall c'est chouette mais je trouve jamais les paquets qu'il faut. C'est comme ca que j'ai tout péter dans Mint lol

Installation
Quick Installation method:

If you do not need to use the compiler from the commandline, the quickest
method is to simply extract the purebasic archive somewhere and execute
the PureBasic IDE.

Type "./purebasic" from inside the "compilers" folder, or doubleclick
on the "purebasic" executable file in your file manager.


Other Installation methods:


1) Recommended (doesn't require root rights)

a) Setup the PUREBASIC_HOME environment variable to your purebasic
path. It can be done in a terminal like this (if you have put
purebasic in your home directory):

export PUREBASIC_HOME=~/purebasic


b) Add the purebasic/compilers/ directory to you path, as it's
where all purebasic binaries are. This can be done like this:

export PATH=$PUREBASIC_HOME/compilers:$PATH


After these 2 steps, you should be able to type 'pbcompiler' in a shell
and you ready to use the IDE, just type 'purebasic'.

Note that these steps only affect your current terminal session, and will not
be present after you log out or restart. It is recommended that you put the above
two lines inside a startup script (like "~/.bashrc" if you use the bash), so
they are executed whenever you log in or open a terminal.
J'ai pas mis la seconde méthode d'install car elle n'est pas recommandée.

Voilà, donc après ben je comprend pas trop comment faire, déjà avoir les bons paquets et ensuite leur truc variables et cie je suis un peu perdu.

Voici un lien qui provient du site officiel et qui vous permettra d'avoir une version de démo :

- Linux 32 bits : http://www.purebasic.com/download/purebasic-demo.tar.gz

- Linux 64 bits : http://www.purebasic.com/download/purebasic-demo_x64.tar.gz

Edit : questions supplémentaire : est ce que je peux faire tourner un programme 32 bits sur mon linux 64 bits ? car au final je préfère pour le moment travailler avec la 32 bits pour des raisons de compatibilité et de facilité.

Je vous remercie par avance 🙂
Bonjour,
Pour voir j'ai téléchargé la version Linux 64 bits.

Pour l'essayé sans l’installer, j'ai suivi
Quick Installation method:

  If you do not need to use the compiler from the commandline, the quickest
  method is to simply extract the purebasic archive somewhere and execute
  the PureBasic IDE.

  Type "./purebasic" from inside the "compilers" folder, or doubleclick
  on the "purebasic" executable file in your file manager.
et cela fonctionne, mais ce n'est qu'une version d'essai.

je résume

-télécharger le version 64 bits
-décompresser l’archive
-dans cette archive décompressé aller dans le répertoire compilers
-et lancer l’exécutable purebasic avec la commande ./purebasic

Cette méthode à l'avantage de ne rien installer sur ton système, donc tu ne risques pas de casse.
Bon j'ai réussi à mettre les libs qu'il faut (à priori) mais impossible de compiler une source, il me fait une erreur gcc que je ne comprend pas, à priori il y a un problème avec le linker alors si il y a des utilisateurs avertis dans le coin 😉
Tu devrai nous donner l'intitulé complet de l'erreur que tu as...
Crystal Noir wrote:Bon j'ai réussi à mettre les libs qu'il faut (à priori) mais impossible de compiler une source, il me fait une erreur gcc que je ne comprend pas, à priori il y a un problème avec le linker alors si il y a des utilisateurs avertis dans le coin 😉
Une erreur gcc ? C'est probablement parce que tu n'as pas installé tous les compilateurs, et qui plus est la plupart des programmes tournent en 32 bits, donc il te faut des paquets et des librairies qui vont rendre ta distro compatible.

Il te faut donc :

- gcc

- gcc-c++

- compat-gcc-34

- compat-gcc-34-c++

- libgcc
paradise wrote:Une erreur gcc ? C'est probablement parce que tu n'as pas installé tous les compilateurs, et qui plus est la plupart des programmes tournent en 32 bits, donc il te faut des paquets et des librairies qui vont rendre ta distro compatible.

Il te faut donc :

- gcc

- gcc-c++

- compat-gcc-34

- compat-gcc-34-c++

- libgcc
D'une part, il faut sacrément être doué pour comprendre l'erreur de Crystal Noir... Sans les traces desdites erreurs. Si ce n'est pas du génie, c'est du pifomètre.
D'autre part, "la plupart des programmes tournent en 32 bits" est, pour être poli, hautement contestable. Surtout quand on parle ici d'un programme installé en version 64 bits.
Enfin, en quoi installer la suite GCC 3.X --- les paquets compat-gcc-* --- résoudrait un supposé problème de compilation en 32 bits ?

A éviter, donc...
Pikachu_2014 wrote: D'une part, il faut sacrément être doué pour comprendre l'erreur de Crystal Noir... Sans les traces desdites erreurs. Si ce n'est pas du génie, c'est du pifomètre.
D'autre part, "la plupart des programmes tournent en 32 bits" est, pour être poli, hautement contestable. Surtout quand on parle ici d'un programme installé en version 64 bits.
Enfin, en quoi installer la suite GCC 3.X --- les paquets compat-gcc-* --- résoudrait un supposé problème de compilation en 32 bits ?

A éviter, donc...
Je ne prétends pas être doué, ni prétendre avoir résolu le problème de notre ami, c'est juste que j'avais compris qu'il voulait l'installer en 32 bits, et comme personnellement il m'est souvent arrivé d'avoir des soucis de compilation pour avoir oublié d'installer des compat, je m'étais dit que ça pouvait lui être utile.

Désolé d'avoir paru prétentieux, j'essaie juste d'aider à mon humble niveau, houlà ! :roll:
paradise wrote:Je ne prétends pas être doué, ni prétendre avoir résolu le problème de notre ami, c'est juste que j'avais compris qu'il voulait l'installer en 32 bits, et comme personnellement il m'est souvent arrivé d'avoir des soucis de compilation pour avoir oublié d'installer des compat, je m'étais dit que ça pouvait lui être utile.
J'ai cru lu une question sur le 32 bits plus générale, qui dépasse le simple contexte de PureBasic :
questions supplémentaire : est ce que je peux faire tourner un programme 32 bits sur mon linux 64 bits ? car au final je préfère pour le moment travailler avec la 32 bits pour des raisons de compatibilité et de facilité.
Pour y répondre plus correctement : oui, on peut exécuter des programmes 32 bits sous Fedora 64 bits. Le paquet glibc.i686 doit simplement être installé. De même, pour compiler cette fois en 32 bits avec gcc, on installera le paquet glibc-devel.i686. Ainsi, l'option magique -m32 de gcc est utilisable.
Ben pour l'erreur le problème c'est que j'ai dedans des caractères non identifiables, c'est pas que je veux pas vous donner.

Dans l'erreur que je vous met dessous, je remplace les caractères non identifiables par des **

Ca fait :

gcc : erreur : unrecognized option â***-arch=i386â**

Je vais voir si j'ai bien les libs décrites plus haut. Sinon dans la version démo il y a normalement un dossier examples/source dans lequel il y a des sources qu'on est censé pouvoir compiler.

Je nage un peu car niveau développement j'ai plus l'habitude d'environnement Windows donc c'est vrai que là je suis un peu paumé 😃

EDIT : j'ai essayé d'ajouter les paquets donnés plus haut il y en avait que deux que je n'avais pas. Cependant ca marche pas mieux j'ai toujours la même erreur 🙁
Des caractères non identifiables ?

Tu ne peux pas faire un copier-coller de toute ta ligne avec ces caractères et les mettre dans ta réponse entre :

code (entre crochets) et /code (entre crochets),

qu'on y voie plus clair ?
Non car l'erreur est montré dans une boîte de dialogue. Je peux à la rigueur faire un screenshot ca sera plus simple.

gtkembedmoz => cette bibliothèque est dépréciée et n'existe plus dans les versions récentes de Xulrunner (elle a été rétablie, temporairement, dans la version fedora 15)
Conclusion c'est mort ? si je comprend bien 😃 En gros va falloir que je dev sous win et que je compile pour linux et que je teste sur linux beurk que d'aller retour 😃

A moins d'utiliser l'ide Win avec wine.
Il faut dire que l'erreur est assez logique vu que gcc n'accepte pas d'option -arch=i386 l'option est -march=i386 même si pour du 32 bits je compilerais plus en i686 personnellement.
Disons que moi j'ai rien fait de particulier, j'ai juste cliqué sur le bouton "compiler" après on peut mettre des options pour le linker et le compiler mais là ca devient compliqué.
Dans ce cas pourquoi passer des options d'optimisation à la compilation ?
Je ne connais pas cet IDE mais par défaut ajouter des options de compilation c'est quand même bizarre. En plus il semble bien détecter gcc mais donne une option qui me fait penser au compilateur intel.
Il ne met pas d'option de compilation, il nous donne la possibilité de le faire. Mais bon vu comme c'est parti, j'sens que j'vais tout simplement virtualiser Windows directement comme cela j'aurais accès à l'ide (windows tant pis) et je pourrais compiler ensuite pour tester sous linux.

Car là c'est un peu le bazar leur truc. J'ai même téléchargé la dernière bêta pour voir, en fait on a en requis les mêmes libs etc...Je suis désepéré lol.

Et dire que j'avais codé un moteur de particules pas mal qui marchait bien sous dodows, le porter sous linux via opengl aurait pu être sympa 😃
Ils ont pas un support pour le logiciel ?
C'est si compliqué que ça de lui dire de ne pas mettre d'option d'optimisation pour gcc ?
Faut que je regarde, je ne maitrise pas trop le dev sous linux donc c'est vrai que je me suis jamais posé la question.

Pour le support si il y a un forum mais les topics sur linux ne sont pas nombreux...Il y a un topic où quelqu'un essai de le faire marcher sous Fedora 15 justement mais depuis silence radio.

EDIT : j'ai jeté un oeil mais rien de bien concret. Dans l'idée on a la possibilité de paramétrer un fichier à donner au linker qui passe des options mais via carrément des commandes ( que je ne connais pas lol).

Sinon on peut mettre un lib (par ex opengl pour linux ou on peut également faire appel au gtk 1.2 à la place du 2).

Je dois dire que je vois pas trop, ca commence à devenir compliqué pour moi.
En version demo on a la même erreur sur l'exemple que j'ai choisi dans le dossier examples...
Par contre il est vrai que l'ide n'est pas géniale par rapport aux options et à la verbosité en compilation...

[edit] Bon j'ai avancé un peu. Je suis passé en ligne de commande donc :
$ cd /chemin/ou/est/purebasic
$ export PUREBASIC_HOME=`pwd`
$ export PATH=$PUREBASIC_HOME/compilers:$PATH
$ cd examples/source
$ $ pbcompiler 2DDrawing.pb

******************************************
PureBasic 4.51 (Linux - x86) Demo
******************************************

Loading external modules...
Starting compilation...
52 lines processed.
Creating the executable.
Package gtk+-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gtk+-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gtk+-2.0' found
Package gthread-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gthread-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gthread-2.0' found
Error: Linker
gcc: error: unrecognized option ‘-arch=i386’
Donc chez moi il manque des bibliothèques déjà est-ce que sur ta machine qui doit avoir suivi les prérequis c'est pas mieux ?