Pourquoi pourquoi Compiler
-
- Messages : 244
- Inscription : jeu. 07/mars/2013 19:02
- Localisation : France Alsace / Espagne Girona
Pourquoi pourquoi Compiler
Salut les Gens,
Comme je voudrai pas mourir con, je pose la question suivant :
Pourquoi ne peut-on pas compiler un programme quand on code sans les API (restrictive au system) pour les différentes versions peu importe la plateforme de développement Osx, Linux, Windows.
Car certain soft y arrive !!! ou alors c'est qu'il utilise un Framework.
J'y comprend rien donc je m'informe, merci d'être indulgent les Gens.
A+ pour la réponse
Comme je voudrai pas mourir con, je pose la question suivant :
Pourquoi ne peut-on pas compiler un programme quand on code sans les API (restrictive au system) pour les différentes versions peu importe la plateforme de développement Osx, Linux, Windows.
Car certain soft y arrive !!! ou alors c'est qu'il utilise un Framework.
J'y comprend rien donc je m'informe, merci d'être indulgent les Gens.
A+ pour la réponse
Dernière modification par doudouvs le mar. 06/août/2013 22:03, modifié 1 fois.
GCC 7.4.0 / PureBasic 5.71 / Ubuntu 18.04.3 LTS
Re: Pourquoi pourquoi Compiler
je pense que Purebasic y vas tout doucement
ça s'appelle la Cross Compilation
fais une recherche sur internet
ça demande des librairies pour chaque OS (c'est pourquoi je pense qu'on y vas doucement)
ça s'appelle la Cross Compilation
fais une recherche sur internet

ça demande des librairies pour chaque OS (c'est pourquoi je pense qu'on y vas doucement)

-
- Messages : 244
- Inscription : jeu. 07/mars/2013 19:02
- Localisation : France Alsace / Espagne Girona
Re: Pourquoi pourquoi Compiler
Je comprend à moitié. Les API j'ai pigé c'est des truc qui nous sert à développé plus rapidement, par contre si le malin yen a toujours un (bilou) décide de supprimer quelques fonction ou des le modifier notre programme est HS. Voilà pourquoi je m'y interesse pas plus.
Par contre la tu me parle des librairies pour moi c'est obscure quoi que j'y vais de temps en temps pour un paquet de clope (c'est pas bien de fumée) boire non plus d'ailleurs.
Pour moi d'après mes connaissances GCC peut bien faire un .exe et si je suis pas complètement a coter de la plaque PB utilise GCC. Après je peut compre que ce soit un soucis d'implantation
chi va piano, va sano e va lontano
Par contre la tu me parle des librairies pour moi c'est obscure quoi que j'y vais de temps en temps pour un paquet de clope (c'est pas bien de fumée) boire non plus d'ailleurs.
Pour moi d'après mes connaissances GCC peut bien faire un .exe et si je suis pas complètement a coter de la plaque PB utilise GCC. Après je peut compre que ce soit un soucis d'implantation
chi va piano, va sano e va lontano
GCC 7.4.0 / PureBasic 5.71 / Ubuntu 18.04.3 LTS
Re: Pourquoi pourquoi Compiler
Bonjour,
Déjà les API (Windows) cela veut dire "Application Programming Interface " et sont diviser en deux grosses classes (Dll, Ocx). Les "Ocx" sont les librairies permettant d'avoir les actions graphique dans Windows.
Alors au minimum un programme un soft compiler en PB ce servira de ces parties pour ouvrir fermer une fenêtre, gérer les boutons et tout le graphique. Après si tu compile juste en juste une code simple, il y a des DLL mathématique ect.... Pourquoi refaire tout un code quand une DLL donne déjà le tout est optimisé?
Cordialement,
GallyHC
Déjà les API (Windows) cela veut dire "Application Programming Interface " et sont diviser en deux grosses classes (Dll, Ocx). Les "Ocx" sont les librairies permettant d'avoir les actions graphique dans Windows.
Alors au minimum un programme un soft compiler en PB ce servira de ces parties pour ouvrir fermer une fenêtre, gérer les boutons et tout le graphique. Après si tu compile juste en juste une code simple, il y a des DLL mathématique ect.... Pourquoi refaire tout un code quand une DLL donne déjà le tout est optimisé?
Cordialement,
GallyHC
Configuration : Tower: Windows 10 (Processeur: i7 "x64") (Mémoire: 16Go) (GeForce GTX 760 - 2Go) - PureBasic 5.72 (x86 et x64)
-
- Messages : 244
- Inscription : jeu. 07/mars/2013 19:02
- Localisation : France Alsace / Espagne Girona
Re: Pourquoi pourquoi Compiler
Bonjour @GallyHC et les autres.
Ahhhhh les Dll je comprend mieux, c'est petites choses qui rende des services celui qui les a inventé aurai mieux fait de ce cassé une jambe ou les 2 d'ailleurs. Pour les Ocx (ActiveX) c'est pire il aurai du perdre les bras.
Donc si je comprend bien PB utilise pour Windows obligatoirement les Ocx, pour linux autre chose et pour Osx peut être autre chose ?.
Ce qui m'enerve le plus c'est que les choses soit liée entre elle, si demain microsoft décide de modifier les Dll ou Ocx personne n'y pourra rien et les programmes sont a refaire. Un peut comme de passer du 32bits au 64bits.
J'ai fait il y a quelques années (quand j'était un peu con), un petit soft qui modifie la base des registres et autre, dont je ne donnerai aucun détail.
Aujourd'hui il marche encore. Le pire c'est malgré toutes les modifications du coter de Microsoft niveau sécurité il marche toujours et peut modifier les fichiers à souhait. Je ne parle pas des antivirus qui ne capte rien nada de chez nada. Si un administrateur souhaite modifier un fichier passer à la moulinette il ne pourra plus avec un jolie message (vous devez être administrateur pour modifier le fichier).
Donc tant que la couche Dos sera la ce sera possible et windows ne pourra jamais modifier/supprimer cette couche sous peine que plus aucun programme ne marche (Dos Windows un mariage à vie).
Voila pourquoi ma question de départ, je pensé que PB n'utiliser pas c'est saloperies et donc que l'on pouvez compiler d'une plateforme pour une autre (Cross compilation) merci @Dobro
Je vois que PB et une longue route sans fin... pour @Fred et les autres participant ou utilisateur hein @KCC
Si quelqu'un souhaite apporter d'autres informations (juste pour le savoir) je suis preneur.
Merci à vous
Ahhhhh les Dll je comprend mieux, c'est petites choses qui rende des services celui qui les a inventé aurai mieux fait de ce cassé une jambe ou les 2 d'ailleurs. Pour les Ocx (ActiveX) c'est pire il aurai du perdre les bras.
Donc si je comprend bien PB utilise pour Windows obligatoirement les Ocx, pour linux autre chose et pour Osx peut être autre chose ?.
Ce qui m'enerve le plus c'est que les choses soit liée entre elle, si demain microsoft décide de modifier les Dll ou Ocx personne n'y pourra rien et les programmes sont a refaire. Un peut comme de passer du 32bits au 64bits.
J'ai fait il y a quelques années (quand j'était un peu con), un petit soft qui modifie la base des registres et autre, dont je ne donnerai aucun détail.
Aujourd'hui il marche encore. Le pire c'est malgré toutes les modifications du coter de Microsoft niveau sécurité il marche toujours et peut modifier les fichiers à souhait. Je ne parle pas des antivirus qui ne capte rien nada de chez nada. Si un administrateur souhaite modifier un fichier passer à la moulinette il ne pourra plus avec un jolie message (vous devez être administrateur pour modifier le fichier).
Donc tant que la couche Dos sera la ce sera possible et windows ne pourra jamais modifier/supprimer cette couche sous peine que plus aucun programme ne marche (Dos Windows un mariage à vie).
Voila pourquoi ma question de départ, je pensé que PB n'utiliser pas c'est saloperies et donc que l'on pouvez compiler d'une plateforme pour une autre (Cross compilation) merci @Dobro
Je vois que PB et une longue route sans fin... pour @Fred et les autres participant ou utilisateur hein @KCC
Si quelqu'un souhaite apporter d'autres informations (juste pour le savoir) je suis preneur.
Merci à vous
GCC 7.4.0 / PureBasic 5.71 / Ubuntu 18.04.3 LTS
Re: Pourquoi pourquoi Compiler
DirectX est une API, imagine les societes de jeux qui devrait recoder les couches basse d'acces a la vidéos et autre. Un jeux couterais encore plus cheres (Déjà que...).
Après (c une simple suposition) il faut 100 lignes de codes pour ouvrir une fenêtre, donc dans chaque programme il faut c'est 100 lignes. Mais avec l'ocx il ne faut q'une ligne et donc plus simple pour programme.
Pour les calculs mathematiques, tu fait ton prog pour x raison dans ta logique ton calcul est faut et bien tu es dans la ..... par contre avec la bonne DLL pas de prob car touts le monde l'utilise elle est forcement bonne de base.
C'est une question d'uniformisé les choses et d'évité de devoir faire des choses en couche basse (direct proc, ect...) que c'est choses existe.
Sur Amiga cela existé deja (les library) et pourtant c'été un bon OS (je suis fan d'amiga lolll).
Une API c'est aussi les plugins (exemple decompresseur vidéos). Autemps dire que cela est aussi nulle est que chaque soft recode a chaque fois le decompresseur vidéos. Si le code de decrompression prend (2Mo) chaque soft aura aussi 2 Mo de plus pour fonctionner.
Non cela est fait pour être le plus utilisable possible. Donc utile.
Cordialement,
GallyHC
PS: que ce soit des « .dll », des « .so » ou j’en passe, elles ont toutes la même fonction. Aidé l’utilisateur et surtout le programmeur. Dire que c’est librairie (quelque part des fonctions) c’est une connerie reviendrais à dire que pour changer ma roue de voiture, j’en refais une en bois moi-même.
Après (c une simple suposition) il faut 100 lignes de codes pour ouvrir une fenêtre, donc dans chaque programme il faut c'est 100 lignes. Mais avec l'ocx il ne faut q'une ligne et donc plus simple pour programme.
Pour les calculs mathematiques, tu fait ton prog pour x raison dans ta logique ton calcul est faut et bien tu es dans la ..... par contre avec la bonne DLL pas de prob car touts le monde l'utilise elle est forcement bonne de base.
C'est une question d'uniformisé les choses et d'évité de devoir faire des choses en couche basse (direct proc, ect...) que c'est choses existe.
Sur Amiga cela existé deja (les library) et pourtant c'été un bon OS (je suis fan d'amiga lolll).
Une API c'est aussi les plugins (exemple decompresseur vidéos). Autemps dire que cela est aussi nulle est que chaque soft recode a chaque fois le decompresseur vidéos. Si le code de decrompression prend (2Mo) chaque soft aura aussi 2 Mo de plus pour fonctionner.
Non cela est fait pour être le plus utilisable possible. Donc utile.
Cordialement,
GallyHC
PS: que ce soit des « .dll », des « .so » ou j’en passe, elles ont toutes la même fonction. Aidé l’utilisateur et surtout le programmeur. Dire que c’est librairie (quelque part des fonctions) c’est une connerie reviendrais à dire que pour changer ma roue de voiture, j’en refais une en bois moi-même.
Configuration : Tower: Windows 10 (Processeur: i7 "x64") (Mémoire: 16Go) (GeForce GTX 760 - 2Go) - PureBasic 5.72 (x86 et x64)
- Kwai chang caine
- Messages : 6989
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Re: Pourquoi pourquoi Compiler
Si je ne m'abuse...je crois que tu confonds deux chosesdoudouvs a écrit :Ahhhhh les Dll je comprend mieux, c'est petites choses qui rende des services celui qui les a inventé aurai mieux fait de ce cassé une jambe ou les 2 d'ailleurs.
Par le terme DLL tu englobes TOUTES les DLL
Seulement voila, il y a une distinction à faire entre les DLL activeX (Invention de crosoft, c'est à dire une DLL standard avec une cochonerie dedans en plus qui les rendent tributaires de la BDR) et les DLL standard libres comme l'air
Je te rejoins pour ce qui est des ActiveX, que l'on peut créer avec VB6 ou superieur et d'autre langages surement
Obligé de les inscrire dans la BDR, ce qui rend les applis non portables, bref une grosse daube
Je me suis battu plusieurs années a essayer de les utiliser comme il ne faudrait pas, les rendres plus souples dans leur installation, essayer de les convertir en standard, et tout a foiré, rien n'etait stable

Par contre la DLL standard C, pas d'enregistrement obligatoire, portable, est une des plus belles choses que j'ai vue de la prog
Elle existent en plusieurs standards d'appel (StdCall, cdecl..), mais restent toujours libres de tout attachement si on ne le desire pas
Une seule DLL peut tourner avec des dizaines de prog simultanement, pas besoin de reecrire les fonctions, tu modifie une ou plusieurs fonctions dans la DLL et toutes tes applis profitent de la modif sans recompilation, trop de la balle

Revers de la medaille, tu te gourres dans la DLL et plus rien marche

Et aussi toujours faire attention à garder une rétrocompatibilité ou compatibilité descendante, ce qui allourdi le code et fait des especes de gluttes à la fin du compte
Un probleme qu'a bien connu crosoft a vouloir garder compatible une grande partie de ses OS et langages VB jusqu'a l'arrivé de .NET
Une DLL (Standard car je ne parle que d'elles, trop "pourites" les autres

Je ne suis pas sur que tout ce que l'on peut faire avec PB est bien "legal" mais on peut mettre dans une DLL tout ce que l'on peut mettre dans un prog ou presque
Voila juste ce petit bemol pour defendre mes amies, une des plus belle invention de la prog de par mon avis personnel

-
- Messages : 244
- Inscription : jeu. 07/mars/2013 19:02
- Localisation : France Alsace / Espagne Girona
Re: Pourquoi pourquoi Compiler
Désoler de vous décevoir, j'ai réussi à compiler un .exe sous linux, je ferai une procèdure pour vous expliquer.
Pour l'instant cela marche de linux pour crée des .exe en x86 x64, je cherche une solution pour Osx
J'espere aussi trouver une solution pour les amis Windows qu'il puisse compiler pour Linux, Osx cela demandera l'installation de cygwin
@KCC j'ai bien compris les différences entre les DLL merci pour ton petit cours
je serait donc "Libre comme l'air" !!!
@Dobro on va faire du vrai/faux Cross Compilation (en trichant un peu)
Pour l'instant cela marche de linux pour crée des .exe en x86 x64, je cherche une solution pour Osx
J'espere aussi trouver une solution pour les amis Windows qu'il puisse compiler pour Linux, Osx cela demandera l'installation de cygwin
@KCC j'ai bien compris les différences entre les DLL merci pour ton petit cours

@Dobro on va faire du vrai/faux Cross Compilation (en trichant un peu)

GCC 7.4.0 / PureBasic 5.71 / Ubuntu 18.04.3 LTS
Re: Pourquoi pourquoi Compiler
Hi, please next time ask your question in french even if translation is not really good.alon a écrit :Please translate this post to engish i am not getting your words by my translater...Thanks!
To answered you :
Code : Tout sélectionner
Désoler de vous décevoir, j'ai réussi à compiler un .exe sous linux, je ferai une procèdure pour vous expliquer.
Pour l'instant cela marche de linux pour crée des .exe en x86 x64, je cherche une solution pour Osx
J'espere aussi trouver une solution pour les amis Windows qu'il puisse compiler pour Linux, Osx cela demandera l'installation de cygwin
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Re: Pourquoi pourquoi Compiler
Ce que je me demande, c'est pourquoi "pourquoi pourquoi compiler" 

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Re: Pourquoi pourquoi Compiler
salut
Si je comprends, avec quelques lib à installer, il va être possible de compiler pour linux et macos ?
Ce serait vraiment très intéressant.
Si je comprends, avec quelques lib à installer, il va être possible de compiler pour linux et macos ?
Ce serait vraiment très intéressant.
http://blendman.blogspot.com/
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english
-
- Messages : 244
- Inscription : jeu. 07/mars/2013 19:02
- Localisation : France Alsace / Espagne Girona
Re: Pourquoi pourquoi Compiler
Je complete ma phrase "pourquoi pourquoi compiler .. (sous chaque systèmes)" avant de faire mon choix sur purebasic j'ai testé d'autre soft notamment realbasic, ce qui ma plu c'est de pourvoir compiler sous un système pour d'autres les points noirs j'en parle pas.SPH a écrit :Ce que je me demande, c'est pourquoi "pourquoi pourquoi compiler"
Mon choix final c'est porter sur purebasic pour diverses raisons, surtout le fait d'avoir un .exe de petite taille, la politique de licence vraiment correcte, Fred est Alsacien lol.
@blendman
pour l'instant j'ai tester la compilation sur un linux je compile pour windows sans problème pour macos c'est un autre histoire. Comme mon environnement principal est macos j'aimerai compiler de macos pour windows/linux.
J'ai pas eu le temps de faire d'autre teste car je suis sur la finalisation d'un projet conséquent, je vous fait un retour quand j'ai un peu plus de temps.
GCC 7.4.0 / PureBasic 5.71 / Ubuntu 18.04.3 LTS
Re: Pourquoi pourquoi Compiler
Parce que parce que (!) sinon on serait obligé d'utiliser un langage comme Java (en runtime) ou Python, etc.
Plus tu veux de la vitesse, plus tu dois te rapprocher des fonctions que la machine et son OS t'offre.
Les DLL, Libs et autres fonctions ne sont que des béquilles et tu peux (moyennant de gros efforts pour refaire le monde
) t'en passer
Plus tu veux de la vitesse, plus tu dois te rapprocher des fonctions que la machine et son OS t'offre.
Les DLL, Libs et autres fonctions ne sont que des béquilles et tu peux (moyennant de gros efforts pour refaire le monde

Purebasic 5.30 full sous Windows XP (x86) et Win7 (64 bits), Linux Debian. Orientation réseaux, domotique
http://golfy.olympe.in/Teo-Tea/
http://golfy.olympe.in/Teo-Tea/
Re: Pourquoi pourquoi Compiler
@Ar-s : de la cross compilation ...enfin .. ? 

Re: Pourquoi pourquoi Compiler
salut
alors, des news pour compiler pour Linux/MacOsx depuis windows, ou pour toutes plateformes via n'importe quel os ? ^^
alors, des news pour compiler pour Linux/MacOsx depuis windows, ou pour toutes plateformes via n'importe quel os ? ^^
http://blendman.blogspot.com/
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english