Gå til hovedindhold
Version2 it for professionelle
Forsiden

Hovedmenu

  • It-nyheder
  • Blogs
  • It-job
  • It-firmaer
  • Whitepapers
  • Opret bruger
  • Log ind
Du kan logge ind med din e-mail-adresse
Der er forskel på store og små bogstaver i adgangskoden.
Glemt adgangskode?
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 MakholmFollow @pmakholm

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

GOTO Copenhagen dag 3 i billeder: Sådan kaprer udstillerne kunder i biksen

Udgivet 24. maj 8.49Opdateret 24. maj 8.49

Jysk hospital bygger eget socialt netværk på Drupal

Udgivet 24. maj 8.07Opdateret 24. maj 8.07

Kynisk it-guru: »Internettet er basalt set noget lort«

Udgivet 24. maj 6.59Opdateret 24. maj 6.59

Meego-afløseren Tizen klar til at tage kampen op med Android

Udgivet 23. maj 16.01Opdateret 23. maj 16.01

Massiv logning af danskernes internetbrug - men politiet bruger kun IP-adressen

Udgivet 23. maj 15.22Opdateret 23. maj 15.22

Flere it-nyheder »

Tilmeld dig Version2's it-nyhedsbrev og vind den nye iPad.

Seneste debat

  1. Kynisk it-guru: »Internettet er basalt set noget lort«

    1 comment.
    Last update 4 minutter 32 sekunder
    Skrevet af Jørgen Abelsen
  2. Meego-afløseren Tizen klar til at tage kampen op med Android

    5 comments.
    Last update 6 minutter 8 sekunder
    Skrevet af Lars Arnbak
  3. Oracle tabte, vandt Google Java ?

    1 comment.
    Last update 9 minutter 15 sekunder
    Skrevet af Peter Jensen
  4. HTML5 – det nye sort?

    13 comments.
    Last update 14 minutter 35 sekunder
    Skrevet af Andreas Larsen
  5. To psykologiske årsager til at IT-projekter går galt

    16 comments.
    Last update 31 minutter 25 sekunder
    Skrevet af Carsten Sonne Larsen
  6. Verdens mest brugte browser hedder Chrome

    10 comments.
    Last update 42 minutter 52 sekunder
    Skrevet af Mikkel Kristensen
  7. Jysk hospital bygger eget socialt netværk på Drupal

    1 comment.
    Last update 43 minutter 41 sekunder
    Skrevet af Cristian Ambæk
  8. Dart: Dynamisk Statisk Programmering

    21 comments.
    Last update 50 minutter 39 sekunder
    Skrevet af Baldur Norddahl

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
  • Download Windows 8
  • HTML5
  • Harddisk-priser
  • IE9
  • Intranet
  • It-sikkerhed
  • Kindle Fire
  • Multimedieskat
  • NemID
  • OS X Mountain 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
Tilmeld dig Version2's it-nyhedsbrev og vind den nye iPad.

Version2 udgives af

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