Page 1 of 2 1 2 LastLast
Results 1 to 15 of 30

Thread: Lazarus 1.0.10 - Uitvoerbaar bestand in Ubuntu(Xubuntu)

  1. #1
    Senior Member
    Join Date
    Sep 2004
    Location
    BELGIE(Vilvoorde)
    Posts
    685

    Lazarus 1.0.10 - Uitvoerbaar bestand in Ubuntu(Xubuntu)

    Mijn kennis van Lazarus is beperkt.
    Heb een eenvoudig programma gemaakt en zou dit willen laten draaien op een andere Ubuntu-pc "zonder" Lazarus.
    Veronderstel dat er een soort DEB (EXE) bestand moet gemaakt worden.
    Is dit mogelijk en hoe?

  2. #2
    John Kuiper
    Join Date
    Apr 2007
    Location
    Almere
    Posts
    8,747
    Je moet aan de compiler doorgeven dat je een binary maakt voor linux (cross compiling).
    Werk je al met Ubuntu, dan is het een kwestie van tarren en compressen en met FTP/SSH/NFS overzetten. Uitpakken en opstarten maar.

  3. #3
    Vermits je je programma compileert op Linux, gewoon de binary kopiëren nar gewenste machine.
    Vereist wel dat de widgetset daar aanwezig is (GTK2 of QT), maar dat zal wel in orde zijn op de meeste distro's.
    Als je "aparte" bibiliotheken (mysql o.i.d) gebruikt moeten die op de andere machine ook aanwezig zijn uiteraard.

    Bart

  4. #4
    Senior Member
    Join Date
    Sep 2004
    Location
    BELGIE(Vilvoorde)
    Posts
    685
    Je moet aan de compiler doorgeven dat je een binary maakt voor linux (cross compiling).
    Werk je al met Ubuntu, dan is het een kwestie van tarren en compressen en met FTP/SSH/NFS overzetten. Uitpakken en opstarten maar.

    Sorry, maar deze uitleg is voormij niet te snappen!
    Kan iemand mij stap voor stap uitleggen wat ik moet doen in Lazarus?

  5. #5
    Quote Originally Posted by seghele View Post

    Sorry, maar deze uitleg is voormij niet te snappen!
    Kan iemand mij stap voor stap uitleggen wat ik moet doen in Lazarus?
    OK.
    Eerst hebben we wat info nodig:
    • Welke Lazarus versie
    • Welke fpc versie
    • Onder wel OS draai je Lazarus nu (Windows of Linux)?
    • Als dat geen Linux is, heb je wel de beschikking over Linux (mag ook in een virtuele machine zijn)?


    Waarschuwing vooraf: als je wilt cross-compilen (bijv. Lazarus op Windows, uitvoerbaar bestand moet draaien op Linux) dan heb je niet veel aan mij.

    Bart

  6. #6
    Senior Member
    Join Date
    Sep 2004
    Location
    BELGIE(Vilvoorde)
    Posts
    685
    De gevraagde info:
    Lazarus 1.0.10 -
    fpc 2.6.2
    Ik heb twee partities: Ubuntu 13.04 en Xubuntu 13.04.
    Dus enkel LINUX en geen Windows.
    Hopelijk is dit genoeg info?

  7. #7
    Dan is het antwoord simpel.
    Het volstaat (in zijn algemeenheid, zie mijn eerdere post) om de binary te kopiëren naar de gewenste machine.
    Daar wel x-bit zetten (chmod +x jouwapplicatie), anders werkt het natuurlijk niet.

    Als je programma's ingewikkelder worden en afhankelijkheden hebben die niet standaard (in de gewenste minimale versie) aanwezig zijn op de doelmachine, dan is het waarschijnlijk verstandiger er een .deb package van te maken.
    (Maar daar heb ik dan ook totaal geen verstand van).

    Als je vaak binaries naar 1 machine moet kopiëren en de bestandsgrootte van de binary (bijv. 50 binaries ?á 10 mb) is een probleem, dan zou ik zeggen installeer Lazarus op de doelmachine en kopiëer allen de sources (Menu -> Project -> Publish project).

    Bart

  8. #8
    John Kuiper
    Join Date
    Apr 2007
    Location
    Almere
    Posts
    8,747
    Als je vaak binaries naar 1 machine moet kopiëren en de bestandsgrootte van de binary (bijv. 50 binaries ?á 10 mb) is een probleem, dan zou ik zeggen installeer Lazarus op de doelmachine en kopiëer allen de sources (Menu -> Project -> Publish project).
    Dan zeg ik nog steeds:
    - Maak er een tar bestand van (tar cvf mijn project.tar <mijn binaries>)
    - Compress de boel om het een stuk kleiner te maken (gzip project.tar)
    - kopieer naar een andere pc (FTP).

    Om dan maar lazarus te instaleren op een andere pc om zo die executable te maken, is een beetje overkill.

    @seghele
    Lastig als je geen ervaring hebt in Linux (voor jouw Ubuntu). Als het goed is, heb je je gecompileerde executable in een aparte folder staan. Volgens mij kan je via een filemanager van de KDE of Gnome een zip bestand maken. Dit zip bestand kan je dan via FTP of met een USBstick overzetten naar een andere pc met Linux.

  9. #9
    Senior Member
    Join Date
    Sep 2004
    Location
    BELGIE(Vilvoorde)
    Posts
    685
    Bedankt voor de uitleg.
    Zal het in de loop van de week uitproberen op een andere Ubuntu pc (zonder Lazarus).
    Als er nog een probleem opkomt zal ik jullie dit laten weten.

  10. #10
    Quote Originally Posted by jkuiper View Post
    Dan zeg ik nog steeds:
    - Maak er een tar bestand van (tar cvf mijn project.tar <mijn binaries>)
    - Compress de boel om het een stuk kleiner te maken (gzip project.tar)
    - kopieer naar een andere pc (FTP).

    Om dan maar lazarus te instaleren op een andere pc om zo die executable te maken, is een beetje overkill.
    Is maar hoe je het bekijkt.
    Standaard build ik al mijn projecten met debug info (-gh -gl).
    Dat levert al snel binaries op van 12 MB die na compressen niet heel veel kleiner worden.
    Ik test geregeld projecten op diverse PC's die niet op een eigen intern netwerk zijn aangesloten.
    Als ik dat zo 10 keer doe (voor 1 PC), wat voor een beetje debuggen peanuts is, dan kan ik > 100MB over het internet jassen (?á upload 256Kbs).
    FPC installeren en Lazarus via svn op die andere PC is dan (in the long run) simpeler en sneller. (En helemaal als ik mijn projectes zelf ook in eensvn repository heb staan.).

    Maar goed, dit begint redelijk off-topic te worden.

    Bart

  11. #11
    Senior Member
    Join Date
    Sep 2004
    Location
    BELGIE(Vilvoorde)
    Posts
    685
    Amaai, wat een uitleg! Snap er niet veel van.

    Heb ondertussen een test gedaan op een Xubuntu pc zonder Lazarus erop.
    Het programma opent zich niet als ik op eender welk bestandje klik.
    Heb volgende bestanden:
    utest1.pas
    utest1.lfm
    Test1lpi
    Testl1pi.lpi
    Testl1pi.lpr
    Testl1pi.lps
    Testl1pi.res
    en twe mappen:
    backup
    lib

    Welk van deze is dan een uitvoerbaar bestand?

  12. #12
    Quote Originally Posted by seghele View Post
    Amaai, wat een uitleg! Snap er niet veel van.
    ...
    Welk van deze is dan een uitvoerbaar bestand?
    Binaries op Linux hebben geen extensie.
    Als je project Test1.lpi is, dan wordt je binary Test1 (tenzij je dit anders ingesteld hebt in Lazarus).

    Mogelijk dat je binary in lib/i386-linux (als je voor 32 bit compileert) staat?

    Bart

  13. #13
    mov rax,marcov; push rax marcov's Avatar
    Join Date
    Apr 2004
    Location
    Ehv, Nl
    Posts
    10,357
    Vreemd, ik zou verwachten dat debuginfo enorm goed compressed. (40% over, dat soort getallen)

  14. #14
    Senior Member
    Join Date
    Sep 2004
    Location
    BELGIE(Vilvoorde)
    Posts
    685
    Mogelijk dat je binary in lib/i386-linux (als je voor 32 bit compileert) staat?

    Heb een volledig nieuw (klein) programma gemaakt.
    Bestaande uit één "Form" met daarop twee "buttons".
    Vertrekkende van de map /LSTEST.
    Volgende bestanden staan erin:
    unitLSTEST.pas
    LSTEST (...zonder extentie)
    LSTEST.ico
    LSTEST.lpi
    LSTEST.lpr
    LSTEST.lps
    LSTEST.res
    In deze map staan nog twee andere:
    backup
    lib
    In de map "lib" staan verschillende bestanden met extenties.
    Dus moet het bestand zonder extentie "LSTEST" het binary zijn!
    Dit bestand geeft geen reactie (op de pc zonder Lazarus) als ik er op click.
    Bij mijn pc werkt het wel en gaat het programma open.
    Moet er soms in de terminal een "run" of ander commando gegeven worden?
    Zou graag een echt duidelijk antwoord ontvangen.

  15. #15
    mov rax,marcov; push rax marcov's Avatar
    Join Date
    Apr 2004
    Location
    Ehv, Nl
    Posts
    10,357
    Je hebt de chmod + x gedaan volgens http://www.nldelphi.com/forum/showpo...59&postcount=7 ?

Page 1 of 2 1 2 LastLast

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •