Gå til hovedindhold
Version2 it for professionelle
Forsiden

Hovedmenu

  • It-nyheder
  • Blogs
  • It-job
  • It-firmaer
  • Emner
  • Opret bruger
  • Log ind
Se kommentarer (4)
Emner

At linke perlscripts statisk

Af Peter Makholm 19. november 2007 kl. 10:12

Jeg sidder og skriver på et perlscript der skal distribueres ud til en række forskellige maskiner. På CPAN findes der selvfølgelig et modul der løser en stor del af problemet, men det kræver en del andre moduler der ikke som standard følger med Perl. Havde jeg arbejdet med C eller tilsvarende kunne jeg lave en statisk linket binary og bare distribuere den. Nu har jeg valget mellem at skulle pakke og distribuere en uvis mængde af tredjepart-moduler eller genopfinde hjulet selv.

Og dog, for et stykke tid siden blev jeg introduceret for Par, the Perl Archive Toolkit. Ligesom inspirationskilden fra Java er par-filer bare en zip-fil der indeholder de perlmoduler man har brug for. Ud over at distribuere den rå par-fil kan man vælge enten at pakke den ind i et perl-script der kræver en almindelig perl-installation, eller som en binær-fil hvor selve perl-fortolkeren er linket ind.

Tager jeg et simplet 2500-tegns script og konverterer det til et script uden ikke-standard afhængigheder, ender jeg med et "script" der fylder 488K. Selvfølgelig slipper jeg for at distribuere andre moduler, men det virker nu alligevel som meget. Synderen viser sige at være modulet LWP::Simple, der alligevel er næsten standard. Udelader jeg dette kommer mit konverterede script ned på 54K, det kan jeg leve med.

Nogle perl-moduler er delvist skrevet i C og i så fald er de selvfølgelig arkitekturafhængige. Men så kan man få par til at pakke flere udgaver ned i samme par-fil. Og hvis man er lidt mere advanceret og skriver sine programmer til det kan man med Par hente manglende perlmoduler on demand og lave Java WebStart-lignende programmer.

Send Tweet
Udskriv
Billede af Peter MakholmOm Peter Makholm

Kommentarer (4)

Opret en konto eller log ind for at følge indhold på Version2 - og bliv opdateret via e-mail eller rss

Følg kommentarer
Poul-Henning Kamps billede
Poul-Henning Kamp 19. nov. 2007 - 11.42
 
Civilizationens pris...

Det er lidt pudsigt at se hvordan Perl, som respons på de fornuftige krav der stilles, udvikler sig mere og mere til et rigtigt programmeringssprog istedet for det quick-fix-hack-tool det var til at starte med.

Vi burde snart holde en konfirmationsfest :-)

Poul-Henning

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Jørgen Henningsen 19. nov. 2007 - 14.24
 
Perl i produktionen

Jeg faldt lige over en perfekt opgave til Perl. Noget filkonvertering i forbindelse med programmering af vores SMD montage automater.
Kode, Kode og vupti lå der et lille fikst script, som fungerede lige efter hensigten.

Men der er jo lige nogle hurdler som skal overståes før jeg kan give scriptet videre. For det første så skal jeg jo lige installere Perl på den windowbox hvor det skal kører. Den er fin, det kan jeg sagtens gøre. Så skal brugeren skrive en kommando i en prompt. Det er vel noget i retning af:

Perl script.pl inputfil.csv

Det er jo ikke særlig praktisk. Man kan selvfølgelig så lave en bat fil, som så ligger i søgestien. Så kan det køres som een kommando efterfulgt af een parameter. Det hjælper jo lidt på det. Jeg kan jo også køre scriptet ved bare at dobbeltklikke på det, men hvad så med min parameter?? Den bliver scriptet vel nødt til at spørge efter med path og det hele. Det er jo også upraktisk.

Jeg er selvfølgelig godt klar over at mange af det her hurdler skyldes at jeg er tvunget til at køre det på windows. Det er bare lidt ærgeligt at det skal være så relativt kompliceret at bruge det udenfor *nix verdenen for det er et godt værktøj.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Peter Makholms billede
Peter Makholm 19. nov. 2007 - 14.40
 
Re: Perl i produktionen

Uden at have forstand på produktionsmiljøer der består af windows-maskiner, så lyder dette netop om en opgave hvor Par ville være en hjælp. Du skal selvfølgelig lige have modificeret dit script så den bruger en eller anden selector boks istedet for at læse kommandolinjen, men derefter burde du med Par kunne pakke det sammen i et stand-alone program med windowsikon og det hele.

Husk --gui flaget til pp så der ikke bliver åbnet en konsol.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Thomas Elsgaard 25. nov. 2007 - 21.38
 
Eller Perl Dev Kit

Activestate har det som en del af deres: Perl Dev kit , fortæl hvor dit perl script ligger, tryk på en knap, og vupti, så har du en exe fil pakket sammen med de binaries og moduler som nu kræves.. vældig smart, og kræver ikke perl installeret på de maskiner som skal eksekvere din perl "exe" fil.

I bund og grund har de nok bare pakket par ind i en fin windows gui ;-)

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer

Tilføj kommentar

Opret en konto eller log ind for at følge indhold på Version2 - og bliv opdateret via e-mail eller rss

Følg kommentarer
Log ind herunder eller opret en bruger for at skrive kommentarer
Du kan logge ind med din e-mail-adresse
Der er forskel på store og små bogstaver i adgangskoden.
Glemt adgangskode?

Seneste nyt

It skal spare kommunerne for 165 millioner kroner i 2012

Udgivet 9. feb 16.02Opdateret 9. feb 16.02

Adobe: Vi laver ikke Flash til Android-udgaven af Chrome

Udgivet 9. feb 15.15Opdateret 9. feb 15.15

Så oldnordisk er politiets it-miljø: Nostalgisk gensyn med 1980’erne

Udgivet 9. feb 14.22Opdateret 9. feb 15.12

EMC lægger flash-cache på PCIe-kort: 4.000 gange hurtigere end harddiske

Udgivet 9. feb 13.39Opdateret 9. feb 13.39

Egedal Kommune sparer 100.000 om året med open source-CMS

Udgivet 9. feb 12.56Opdateret 9. feb 12.56
Flere it-nyheder »
Få it-nyheder og blogs hver dag med Version2's nyhedsbrev.

Seneste debat

  1. Opdateret liste over danske iværksættere

    2 comments.
    Last update 2 timer 10 minutter
    Skrevet af Therese Hansen
  2. Stop SOPA, PIPA, ACTA, TPP og alle dem der kommer efter

    50 comments.
    Last update 6 timer 31 minutter
    Skrevet af Bjarne W. B. Petersen
  3. Derfor bliver dårlige it-projekter ikke stoppet i tide

    1 comment.
    Last update 6 timer 55 minutter
    Skrevet af Kasper Jørgensen
  4. Grotesk jobinterview i 2007: »Tag ikke jobbet, vi får alligevel aldrig Polsag til at virke«

    17 comments.
    Last update 7 timer 3 minutter
    Skrevet af Claus Waldersdorff Knudsen
  5. Så oldnordisk er politiets it-miljø: Nostalgisk gensyn med 1980’erne

    6 comments.
    Last update 7 timer 5 minutter
    Skrevet af Simon Justesen
  6. Domæne-forening: Lov om .aarhus og .cph var for tynd

    9 comments.
    Last update 7 timer 56 minutter
    Skrevet af Jarle Knudsen
  7. ACTA er i orden!

    51 comments.
    Last update 10 timer 29 minutter
    Skrevet af Jarle Knudsen
  8. It-advokat: Nu går grænsebommene ned over internettet

    10 comments.
    Last update 12 timer 15 minutter
    Skrevet af Niels Elgaard Larsen
Mere debat »

Information

  • Kontakt redaktionen
  • Job- og annoncesalg
  • Teknisk support
  • Om Version2
  • Brugerbetingelser
  • Privatlivspolitik

Aktuelle emner

  • Agil udvikling
  • Android
  • Bruttolønsordning
  • Business Intelligence
  • Cloud computing
  • Digitaliseringsstyrelsen
  • HTML5
  • Harddisk-priser
  • IE9
  • Intranet
  • It-sikkerhed
  • Kindle Fire
  • Multimedieskat
  • NemID
  • OS X Lion
  • Open source CMS
  • Projektledelse
  • Scrum
  • Sharepoint intranet
  • Storage
  • Ubuntu 11.10
  • Virtualisering
  • Windows 8
  • Windows Phone 7
  • iOS 5
  • iPhone 4S

Tjenester

  • Android-app
  • iPhone-app
  • RSS-feeds
Følg @version2dk
Få it-nyheder og blogs hver dag med Version2's nyhedsbrev.

Version2 udgives af

  • Mediehuset Ingeniøren A/S work Skelbækgade 4 1717 København V
  • Tlf. work 33265300