EndeavourOS pacpl

Καλησπέρα σας φίλοι μου. Προσπαθώ να κάνω εγκατάσταση το pacpl αλλά παίρνω λάθος στο πακέτο Pearl-cddb.
Κατέβασα το πακέτο από εδώ AUR (en) - pacpl
Και προσπάθησα να το κάνω compile ( οι γνώσεις μου είναι βασικές)
Για την ιστορία έχει άλλα 100 προγράμματα που μπορούν να κάνουν ανάλογες δουλειές αλλά με έχει πιάσει τρελά να το κάνω να δουλέψει.
Για να μην ανοίγω άλλο θέμα υπάρχει κάποιος οδηγός για πια από τα προγράμματα που μπαίνουν με την εγκατάσταση μπορούν να διαγραφτούν??
Ευχαριστώ

Η χειροκίνητη εγκατάσταση πακέτων από το AUR δεν έχει αυτόματη επίλυση εξαρτήσεων (προφανώς), οπότε θα πρέπει πρώτα να εγκαταστήσεις αυτές και τελευταίο το πακέτο που θέλεις. Το perl-cddb θα το βρεις και αυτό στο AUR.


Tip 1: Μπορείς να βλέπεις τις εξαρτήσεις ανοίγοντας το αρχείο PKGBUILD και κοιτώντας στη γραμμή depends= ή εναλλακτικά στη σελίδα του εκάστοτε πακέτου στο AUR.

Tip 2: Σε μελλοντικές ερωτήσεις, καλό είναι να παραθέτεις το μήνυμα σφάλματος και όχι να γράφεις απλά «παίρνω λάθος», για να μη χρειάζεται να μαντέψουν οι υπόλοιποι και να παίρνεις πιο σωστές απαντήσεις.

1 Like

δοκίμασα για να δω και αποτυγχάνει αυτό το πακέτο που είναι εξάρτηση: AUR (en) - perl-cddb

#soulrain έχεις δίκιο για την κακογραμμένο ερώτηση μου. Την επόμενη φορά θα προσπαθήσω να είμαι πιο συγκεκριμένος.
#lucinos πιστεύεις πως υπάρχει λύση;;;

παραθέτω και το πρόβλημα από τερματικό

==> Starting check()...
PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/000-report-versions.t ... # Testing with Perl 5.032001, /usr/bin/perl
t/000-report-versions.t ... 1/? #     Carp version is 1.50
#     Encode version is 3.06
#     ExtUtils::MakeMaker version is 7.44
#     HTTP::Request version is 6.28
#     IO::Socket version is 1.43
#     LWP version is 6.52
#     MIME::QuotedPrint version is 3.13
#     Mail::Header version is 2.21
#     Mail::Internet version is 2.21
#     Scalar::Util version is 1.55
#     Sys::Hostname version is 1.23
#     Test::More version is 1.302175
#     strict version is 1.11
#     vars version is 1.05
#     warnings version is 1.47
t/000-report-versions.t ... ok    
t/01_cddb.t ............... 1/25 Can't use an undefined value as an ARRAY reference at /home/eric/.cache/yay/perl-cddb/src/CDDB-1.222/blib/lib/CDDB.pm line 355.
# Looks like your test exited with 22 just after 1.
t/01_cddb.t ............... Dubious, test returned 22 (wstat 5632, 0x1600)
Failed 24/25 subtests 
t/release-pod-coverage.t .. skipped: these tests are for release candidate testing
t/release-pod-syntax.t .... skipped: these tests are for release candidate testing

Test Summary Report
-------------------
t/01_cddb.t             (Wstat: 5632 Tests: 1 Failed: 0)
  Non-zero exit status: 22
  Parse errors: Bad plan.  You planned 25 tests but ran 1.
Files=4, Tests=16,  9 wallclock secs ( 0.03 usr  0.00 sys +  0.33 cusr  0.06 csys =  0.42 CPU)
Result: FAIL
Failed 1/4 test programs. 0/16 subtests failed.
make: *** [Makefile:873: test_dynamic] Error 255
==> ERROR: A failure occurred in check().
    Aborting...
error making: perl-cddb

Κατέβασε το πακέτο perl-cddb με την εντολή :

git clone https://aur.archlinux.org/perl-cddb.git

Μπες μέσα στον φάκελο που δημιουργήθηκε και άνοιξε το αρχείο PKGBUILD με έναν texteditor της επιλογής σου.
Στη συνέχεια κάνε comment την γραμμή :
make test
να γίνει δηλαδή έτσι :
#make test
Σώσε και τρέξε μέσα στον φάκελο την εντολή :

makepkg -si

Αφού εγκατασταθεί το πακέτο perl-cddb μπορείς να προχωρήσεις στην εγκατάσταση του pacpl με την εντολή :

yay -S pacpl

αλλά να ξέρεις ότι ενώ δεν το γράφει θα χρειαστείς και το πακέτο perl-string-shellquote.
Το εγκαθιστάς με την εντολή αφού εγκαταστήσεις το pacpl :

sudo pacman -S perl-string-shellquote

Αν όλα πάνε καλά θα δουλέψει το πρόγραμμα.

Θα ήθελα αν δεν είναι κόπος να μου εξηγήσεις λίγο για το σφάλμα και αν εγώ θα μπορούσα να το βρω μόνος μου… Προσπαθώ να μάθω…

Κατά το compile το τερματικό είναι ο καλύτερός σου φίλος, στη συγκεκριμένη περίπτωση αν κατεβάσεις τον πηγιαίο κώδικα του προγράμματος από εδώ : https://aur.archlinux.org/packages/perl-cddb/ (κάτω κάτω στη σελίδα, εκεί που λέει sources), θα βρεθείς με το συμπιεσμένο αρχείο CDDB-1.222.tar.gz, αν το αποσυμπιέσεις θα δημιουργηθεί ο φάκελος CDDB-1.222, μέσα στον φάκελο υπάρχει ένας υποφάκελος με το όνομα lib, όπου μέσα υπάρχει το αρχείο CDDB.pm. Αυτήν την διαδρομή, μας την είπε το τερματικό κατα το compile καθώς χτύπησε error στο συγκεκριμένο αρχείο στην γραμμή 355. Αν ανοίξεις αυτό το αρχείο και πας στην γραμμή 355 θα δεις το παρακάτω :
($self->{host}, $self->{port}) = @{$cddbp_hosts[$cddbp_host_selector]};
To error του τερματικού έλεγε :
Can't use an undefined value as an ARRAY reference
Μια διαδικασία compile συνήθως αποτελείται από 3(4) βήματα χειροκίνητα και περιγράφεται στο αρχείο README ή INSTALL που έρχεται με τον πηγιαίο κώδικα :
./configure
make
make test/check (optional)
make install
Το συγκεκριμένο πακέτο χτυπούσε το σφάλμα στο make check το οποίο δεν είναι υποχρεωτικό καθώς πρόκειται για κάποια self-tests που έρχονται μαζί με το πακέτο.
Αφαιρέσαμε λοιπόν αυτό το βήμα κατά την χειροκίνητη διαδικασία και το πακέτο εγκαταστάθηκε. Στη συνέχεια εγκαταστάθηκε και το pacpl με τις υπόλοιπες εξαρτήσεις του αλλά κατά το τρέξιμο της εντολής, έβγαλε νέο σφάλμα που περιγράφεται εδώ : https://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg1786541.html
Οπότε χρειάστηκε και το perl-string-shellquote.
Ελπίζω να μην κούρασα και να μην μπέρδεψα. :upside_down_face:

2 Likes

Σε γενικές γραμμές πήρα μια ιδέα θα πάω να ανοίξω και τους φακέλους βήμα βήμα να το δω και μόνος μου. Να σου κάνω μια ερώτηση ακόμα λίγο εκτός θέματος…
Η προηγούμενή διανομή μου ήταν τα kubuntu ευχαριστημένος αρκετά και ξενερωμένος με τα snap αποφάσισα να βρω κάτι άλλο. Κατά την εγκατάσταση του kubuntu υπήρχε η επιλογή full or lite για το endeavour δεν παιζει κατι τετοιο ε??

Έχω μηδαμινή εμπειρία με το EndeavourOS, απ’ ότι βλέπω από το site τους προσφέρουν 1 iso μόνο, όπου μπορείς να επιλέξεις κατά την εγκατάσταση το γραφικό περιβάλλον που θέλεις. Δεν γνωρίζω αν ο Calamares δίνει την δυνατότητα να επιλέξεις αυτό που αναφέρεις.

Ο calamares δεν την δίνει και εγώ δε θέλω να σβήσω κάτι και να πάει περίπατο το σύστημα…
Σε ευχαριστώ για τη βοήθεια…καλό βράδυ

1 Like

Να είσαι καλά, καλό βράδυ!

Αυτό το νήμα έκλεισε αυτόματα 2 ημέρες μετά την τελευταία απάντηση. Δεν επιτρέπονται πλέον νέες απαντήσεις.