Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Responsable Pascal, Delphi et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    mars 2003
    Messages
    7 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : mars 2003
    Messages : 7 648
    Points : 55 111
    Points
    55 111
    Billets dans le blog
    2
    Par défaut Sortie de la version 2.0.4 de l'EDI multiplateforme Lazarus, basée sur Free Pascal 3.0.4
    Sortie de la version 2.0.4 de Lazarus
    Toujours basée sur Free Pascal 3.0.4

    L’équipe de développement de Lazarus vient d’annoncer la sortie de la version corrective 2.0.4 de l’environnement de développement, toujours basé sur la version 3.0.4 de Free Pascal. Il s'agit d'une version corrective dans laquelle l'amélioration du support de Cocoa sur macOS X s'est taillé la part du lion. La liste de toutes les améliorations est fournie ici (en anglais).

    Téléchargez Lazarus 2.0.4

    Voici les plateformes supportées par Lazarus :

    • Windows : 2000, XP, Vista, 7, 8, 8.1 et 10, 32 et 64 bits.
    • FreeBSD/Linux, Gtk et Qt et Qt5, 32 et 64 bits.
    • macOS X : de 10.5 à 10.12, Carbon (32 bits), Cocoa (64 bits, en version beta), Qt et Qt5 (32 et 64 bits).


    Source : Lazarus


    Et vous ?
    Allez-vous utiliser cette version corrective de Lazarus ?
    Que pensez-vous des améliorations apportées ?

    Retrouvez les meilleurs cours et tutoriels pour apprendre la programmation avec Lazarus.
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]

  2. #2
    Inactif  

    Homme Profil pro
    Écrivain public, Économiste et Programmeur Free Pascal
    Inscrit en
    août 2005
    Messages
    351
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Écrivain public, Économiste et Programmeur Free Pascal
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : août 2005
    Messages : 351
    Points : 952
    Points
    952
    Billets dans le blog
    40
    Par défaut Extended
    Je ne vois pas l'intérêt de Cocoa. Il y a déjà QT dessus.
    Par contre si un logiciel libre permet de réaliser facilement un paquet Cocoa, je suis preneur.

  3. #3
    Membre extrêmement actif Avatar de Jon Shannow
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    avril 2011
    Messages
    3 244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : avril 2011
    Messages : 3 244
    Points : 6 085
    Points
    6 085
    Par défaut
    Bonjour,
    J'utilisais ce genre d'astuces dans mes listes pour associer des éléments de type entier dans des Listbox (ou combobox).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Lst_roles.AddItem( FieldByName('rol_nom').AsString, TOBJECT( FieldByName('rol_id').AsInteger));
    Puis pour récupérer l'élément
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    in_RolId := INTEGER( Lst_roles.Items.Objects[ Lst_roles.ItemIndex]);
    Mais en version 2.0.4 j'ai une erreur de compilation.
    u_roles.pp(141,32) Error: Illegal type conversion: "TObject" to "LongInt"
    u_roles.pp(245,56) Error: Illegal type conversion: "LongInt" to "TObject"

    Que dois-je faire pour corriger cette erreur de compilation ?

    Merci d'avance
    JS
    Au nom du pèze, du fisc et du St Estephe
    Au nom du fric, on baisse son froc...

  4. #4
    Inactif  

    Homme Profil pro
    Écrivain public, Économiste et Programmeur Free Pascal
    Inscrit en
    août 2005
    Messages
    351
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Écrivain public, Économiste et Programmeur Free Pascal
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : août 2005
    Messages : 351
    Points : 952
    Points
    952
    Billets dans le blog
    40
    Par défaut TObject
    Citation Envoyé par Jon Shannow Voir le message
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Lst_roles.AddItem( FieldByName('rol_nom').AsString, TOBJECT( FieldByName('rol_id').AsInteger));
    Puis pour récupérer l'élément
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    in_RolId := INTEGER( Lst_roles.Items.Objects[ Lst_roles.ItemIndex]);
    Mais en version 2.0.4 j'ai une erreur de compilation.

    JS
    TObject est un pointeur protégé qui peut être 32 bits en RISC ou 64 bits.
    Longint ne doit pas être utilisé pour ça. C'est soit Integer ou Int64. Ça n'est pas protégé.
    Ou ajoute du pointeur derrière tout ça.

  5. #5
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    mars 2005
    Messages
    3 377
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : mars 2005
    Messages : 3 377
    Points : 9 861
    Points
    9 861
    Billets dans le blog
    6
    Par défaut
    Je pense qu'il s'agit d'une question de longueur des pointeurs et entiers qui a pu évoluer. Donc au lieu de Integer, essayer Int32 ?
    Delphi 5 Pro - Delphi 10.3.2 Rio Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  6. #6
    Membre extrêmement actif Avatar de Jon Shannow
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    avril 2011
    Messages
    3 244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : avril 2011
    Messages : 3 244
    Points : 6 085
    Points
    6 085
    Par défaut
    En effet, ça passe en changeant par asLargeInt et INT64.

    Merci à vous 2

    JS

    NB : Je ne peux pas encore faire de test, car apparemment, j'ai un problème de DLL SQLITE. TZConnection n'accepte pas ma DLL qui fonctionnait très bien en 1.8.x
    Au nom du pèze, du fisc et du St Estephe
    Au nom du fric, on baisse son froc...

  7. #7
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    mars 2005
    Messages
    3 377
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : mars 2005
    Messages : 3 377
    Points : 9 861
    Points
    9 861
    Billets dans le blog
    6
    Par défaut
    C'est bien une dll 64 Bits ?
    Delphi 5 Pro - Delphi 10.3.2 Rio Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  8. #8
    Membre extrêmement actif Avatar de Jon Shannow
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    avril 2011
    Messages
    3 244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : avril 2011
    Messages : 3 244
    Points : 6 085
    Points
    6 085
    Par défaut
    Citation Envoyé par tourlourou Voir le message
    C'est bien une dll 64 Bits ?
    Je crois que le problème vient de là en effet. Je travaillais en version hybride 32/64 et compilation en 32bit. Là, je suis passé en 64 bits, d'où les problèmes.
    Je pense que je vais avoir quelques soucis, mais, on se mettre au boulot, rien d'insurmontable

    Merci à toi
    JS
    Au nom du pèze, du fisc et du St Estephe
    Au nom du fric, on baisse son froc...

  9. #9
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    juillet 2006
    Messages
    8 627
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : juillet 2006
    Messages : 8 627
    Points : 12 290
    Points
    12 290
    Par défaut Retour sur install FPC 3.0.4-1/Laz 2.0.4 dans Debian 10
    Alors voilà.

    Je voulais faire avancer le schmilblik, suite à certains problèmes qui semblent loufoques, alors j'ai créé une machine virtuelle dans ma machine de prod', je lui ai installé la toute dernière Debian 10 (je vous passe les misères d'une install actuelle par rapport à ce que j'ai connu il y a 15 ans, quand ça se déroulait les doigts dans le nez, époque bénie...), j'ai mis à jour comme indiqué dans ce sujet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    apt-get update
    apt-get upgrade
    ensuite j'ai installé gdb en utilisant synaptic, le package manager Debian, et j'ai aussi installé libgtk2.0-dev, une astuce que j'avais notée il y a un bout de temps.
    Enfin, j'ai installé dans l'ordre qui va bien les trois packages téléchargés là, soit
    dpkg -i fpc-l<TAB> fpc-s<TAB> laz<TAB> <ENTREE> et hop !, ça l'a fait sans aucun problème.

    Confiant, j'ai donc cherché le raccourci pointant sur l'EDI, l'ai double-cliqué, et sous l'EDI est apparu la fenêtre de premier lancement, celle où il faut configurer les chemins et, quel que soit l'onglet choisi, c'est "OK" qui est affiché, elle est pas belle la vie ?
    Super-confiant, j'ai lancé une reconstruction de l'EDI en passant par Outils / Créer Lazarus avec le profil : EDI normal et là, au bout de 5 minutes,

    Nom : error_while_linking.png
Affichages : 215
Taille : 27,3 Ko

    Fermez le ban.
    Heureusement que je n'ai pas mis à jour ma machine de prod, ma vieille 1.4 est encore vaillante et va durer longtemps, on dirait.
    Je ne vous cacherai pas que je n'ai pas trop le temps et pas du tout l'envie de googler avec ce message d'erreur d'une banalité affligeante : je prends et je jette le fichier représentant le disque dur, c'est ça qui est bien avec les machines virtuelles.

    Question subsidiaire : les mecs qui mettent en ligne les packages prennent-ils le temps de les tester ?
    On dirait bien que non…
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  10. #10
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    juillet 2006
    Messages
    8 627
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : juillet 2006
    Messages : 8 627
    Points : 12 290
    Points
    12 290
    Par défaut
    Ce matin j'ai fait autrement :

    J'ai généré un autre disque virtuel, donc une autre install de Debian 10, une autre install de GDB, de libgtk2.0-dev (sinon patatras...), de fpc-laz, fpc-src, laz204 et après lancement de l'EDI j'ai d'abord fait F9, pour voir. Compil et exécution ok, je ferme le binaire et je lance la reconstruction de l'EDI et là, ça s'est bien passé sans erreurs.


    Est-ce à dire qu'un coup de F9 va générer des chemins ou paramètres absents ? J'ai autre chose à faire qu'à passer mon temps à générer des machines virtuelles juste pour tester (parce que ça aussi ça devient une abomination ! 2,2 Go de données compressées sur l'ISO avec 99 % de choses inutiles dans mon cas… Mais il n'y a plus d'installeur avec choix des choses à installer, et tout installer prend un temps dément, )
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  11. #11
    Inactif  

    Homme Profil pro
    Écrivain public, Économiste et Programmeur Free Pascal
    Inscrit en
    août 2005
    Messages
    351
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Écrivain public, Économiste et Programmeur Free Pascal
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : août 2005
    Messages : 351
    Points : 952
    Points
    952
    Billets dans le blog
    40
    Par défaut
    Citation Envoyé par Jipété Voir le message
    Ce matin j'ai fait autrement :

    J'ai généré un autre disque virtuel, donc une autre install de Debian 10, une autre install de GDB, de libgtk2.0-dev (sinon patatras...), de fpc-laz, fpc-src, laz204 et après lancement de l'EDI j'ai d'abord fait F9, pour voir. Compil et exécution ok, je ferme le binaire et je lance la reconstruction de l'EDI et là, ça s'est bien passé sans erreurs.
    Les machines virtuelles intégrées dans une fenêtre n'ont plus aucun intérêt pour moi. Tout se fera pas GNU Linux plus tard, y compris Cocoa.

    Sachez qu'il est plus rapide, plus sûr et surtout possible d'installer deux versions de Linux sur votre ordinateur, voire tous les Linux que vous voulez en boot.

    pour un serveur mettre /tmp sur une partition disque dur à part. En virant Windows, je peux accélérer le swap si j'ai un disque dur en le mettant en premier.

Discussions similaires

  1. Réponses: 2
    Dernier message: 17/12/2017, 18h28
  2. Réponses: 0
    Dernier message: 13/08/2017, 22h24
  3. Réponses: 0
    Dernier message: 18/04/2017, 20h06
  4. Réponses: 1
    Dernier message: 05/02/2017, 11h52
  5. Réponses: 5
    Dernier message: 27/07/2016, 19h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo