Thread Modulversion vergleichen (15 answers)
Opened by bianca at 2010-11-28 08:35

bianca
 2010-11-28 08:35
#143147 #143147
User since
2009-09-13
7016 Artikel
BenutzerIn

user image
Hi!

Habe eine Liste aller installierten Module mittels ExtUtils::Installed erstellt, soweit so gut.
Manche Module haben in der Versionsangabe Unterstriche.

Dann habe ich eine zweite Liste (manuell erstellt) mit Modulen die mein Projekt benötigt, auch mit Versionsangabe.

Wie kann ich denn nun Perl vergleichen lassen, ob die Modulversion aus dem ExtUtils::Installed Inventar auch höher oder wenigstens gleich der benötigten ist?
Eine Zahl mit Unterstrichen läßt sich ja nicht mit < und > vergleichen.

Hat jemand eine Idee für mich?
Ich kenne diesen Aufbau der Versionsnummern für Module nämlich auch nicht und weiß nicht, was dahinter steht.

Danke

Edit: Code zum spielen ergänzt:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
#!/usr/bin/perl -w
use strict;
use warnings;

my $ExtUtils_Installed_liefert_zu_CPAN = '1.94_54';
my $benoetigte_version_als_beispiel = '1.94_53';

if ($ExtUtils_Installed_liefert_zu_CPAN >= $benoetigte_version_als_beispiel) {
    print "ja, installierte ist passend oder neuer\n";
}


Code: (dl )
1
2
3
Argument "1.94_53" isn't numeric in numeric ge (>=) at test14.pl line 8.
Argument "1.94_54" isn't numeric in numeric ge (>=) at test14.pl line 8.
ja, installierte ist passend oder neuer


Edit2: Gleiches Problem natürlich mit Modulen mit mehreren Punkten in der Versionsnummer, z.B.: PDF::Table 0.9.3
Last edited: 2010-11-28 08:44:29 +0100 (CET)
10 print "Hallo"
20 goto 10

View full thread Modulversion vergleichen