Freecad python manjaro

μετα απο μια αναβαθμιση συστηματος το freecad σταματησε να λειτουργει

<built-in function SoFieldContainer_getField> returned a result with an exception set
21:46:16 Traceback (most recent call last):
File "<string>", line 132, in Activated
File "/usr/lib/freecad/Mod/Draft/draftguitools/gui_snapper.py", line 1635, in show
self.setTrackers()
File "/usr/lib/freecad/Mod/Draft/draftguitools/gui_snapper.py", line 1679, in setTrackers
self.grid = trackers.gridTracker()
File "/usr/lib/freecad/Mod/Draft/draftguitools/gui_trackers.py", line 974, in __init__
pick.style.setValue(coin.SoPickStyle.UNPICKABLE)
File "/usr/lib/python3.10/site-packages/pivy/coin.py", line 3989, in __getattr__
field = self.getField(name)
File "/usr/lib/python3.10/site-packages/pivy/coin.py", line 3873, in getField
return _coin.SoFieldContainer_getField(self, name)

21:47:20 Persistent toolbars: Snapper toolbar not managed.
21:50:51 Persistent toolbars: Snapper toolbar not managed.
21:51:04 Persistent toolbars: Snapper toolbar not managed.
21:51:04 <built-in function SoFieldContainer_getField> returned a result with an exception set
21:51:04 Traceback (most recent call last):
File "<string>", line 132, in Activated
File "/usr/lib/freecad/Mod/Draft/draftguitools/gui_snapper.py", line 1635, in show
self.setTrackers()
File "/usr/lib/freecad/Mod/Draft/draftguitools/gui_snapper.py", line 1679, in setTrackers
self.grid = trackers.gridTracker()
File "/usr/lib/freecad/Mod/Draft/draftguitools/gui_trackers.py", line 974, in __init__
pick.style.setValue(coin.SoPickStyle.UNPICKABLE)
File "/usr/lib/python3.10/site-packages/pivy/coin.py", line 3989, in __getattr__
field = self.getField(name)
File "/usr/lib/python3.10/site-packages/pivy/coin.py", line 3873, in getField
return _coin.SoFieldContainer_getField(self, name) 


εμαθα οτι με την python 3.10 δεν τρεχει το freecad το τρεχω στο manjaro
εκανα υποβαθμιση της python me την εντολη

sudo DOWNGRADE_FROM_ALA=1 downgrade python

και με αυτην την εντολη

yay -S python39

τωρα βγαζει αυτο το μυνημα λαθους

freecad: error while loading shared libraries: libpython3.10.so.1.0: cannot open shared object file: No such file or directory

δοκιμασα και αυτο χωρις αποτελεσμα

 sudo ln -s /usr/lib/libpython3.10.so.1.0 /usr/lib/libpython3.9.m.so.1.0

Δώσε το αποτέλεσμα της εντολής :

ls /usr/lib | grep libpython

αν δεν βγάζει κάτι δώσε επίσης το αποτέλεσμα της εντολής

ls /usr/lib64 | grep libpython

Επίσης έχεις προσθέσει ένα m στο όνομα του symbolic link και έχεις τα filenames ανάποδα. Με την προϋπόθεση ότι υπάρχει μόνο η 3.9 και θες να δημιουργήσεις ένα symbolic link με το όνομα 3.10, θα πρέπει να γράψεις πρώτα το 3.9 και μετά το 3.10 στην εντολή ln.

 ls /usr/lib | grep libpython
libpython2.7.so
libpython2.7.so.1.0
libpython3.10.so
libpython3.10.so.1.0
libpython3.so
[kostas@kostas-w251esqw270esq ~]$ ls /usr/lib64 | grep libpython
libpython2.7.so
libpython2.7.so.1.0
libpython3.10.so
libpython3.10.so.1.0
libpython3.so

Άλλη μια εφαρμογή που έχει πρόβλημα με την αναβάθμιση της python σε 3.10.1. Η υποβάθμιση σε 3.9 δημιουργεί το πρόβλημα που αναφέρεις. Το ίδιο θέμα υπάρχει με το kodi(και άλλες εφαρμογές πιθανότατα). Μπορείς να κάνεις εγκατάσταση της έκδοσης 3.10.0 που πιθανότατα θα λύσει τα προβλήματα.
https://archive.archlinux.org/packages/p/python//

Σε ποια version είσαι τώρα γιατί μας μπέρδεψες? Δες το με

python3 --version

Από τις εντολές φαίνεται ότι υπάρχει η libpython3.10.so.1.0, οπότε δεν θα έπρεπε να παραπονιέται το FreeCAD. Εγκατέστησε για όλο το σύστημα, την έκδοση που είχες πριν τις αναβαθμίσεις από το link του @dancaer69.

το εχω κανει και βγαζει αυτο το μυνημα

freecad: error while loading shared libraries: libpython3.10.so.1.0: cannot open shared object file: No such file or directory

Αυτά συμβαίνουν όταν γίνεται το υποτιθέμενο «testing» στο Manjaro που καθυστερεί τις αναβαθμίσεις των πακέτων και αναβαθμίζει ό,τι να 'ναι όποτε να 'ναι.

Η μοναδική ασφαλής επιλογή που έχεις είναι να περιμένεις μέχρι τα ξεφτέρια του Manjaro να διαθέσουν ένα build του FreeCAD με τη σωστή έκδοση της Python. Ποτέ μα ποτέ μην υποβαθμίζεις ένα τόσο βασικό στοιχείο και ποτέ μα ποτέ μην ακολουθείς συμβουλές που αφορούν το symlinking βιβλιοθηκών και sonames. Είναι μια κάκιστη πρακτική παλιότερων χρόνων και μόνο προβλήματα φέρνει.

Στο μεταξύ μπορείς να δοκιμάσεις άλλους mirrors, μήπως τυχόν ο βασικός σου δεν είναι συγχρονισμένος (δεν το νομίζω αλλά ποτέ δεν ξέρεις).

Η ειρωνεία για “θυγατρικές” διανομές της “αγαπημένης” μας και για τους προγραμματιστές των, δεν νομίζω ότι χρειάζεται.
Τώρα σχετικά με το symlinking, αν του είναι πολύ απαραίτητο το πρόγραμμα αυτες τις ημέρες για οποιαδήποτε εργασία (επαγγελματική, φοιτητική κτλπ), είναι προτιμότερο από το να περιμένει να βγει build καινούριας έκδοσης.
Όταν με το καλό βγει μπορεί να κάνει το upgrade και να αλλάξει τις ρυθμίσεις.

Δεν ήταν ειρωνεία. Αναφορά σε έναν λανθασμένο τρόπο ανάπτυξης ήταν, ο οποίος στη συγκεκριμένη περίπτωση προκαλεί το πρόβλημα του φίλου και που, ενδεχομένως, δεν τον γνώριζε. Ούτε ή έκδοση της Python φταίει ούτε το upstream του FreeCAD. Ο αχταρμάς του Manjaro φταίει και θεωρώ ότι οι κακές πρακτικές πρέπει να επισημαίνονται όποια διανομή και αν αφορούν.

Το symlinking μπορεί να λειτουργεί (προσωρινά) ως workaround αλλά υπάρχουν μεγάλες πιθανότητες να χαλάσει ένα ή περισσότερα άλλα συστατικά του συστήματος που θα ακολουθήσουν τον ίδιο σύνδεσμο. Επιπλέον, σε μια rolling release διανομή τα sonames αλλάζουν πολύ συχνά και αύριο-μεθαύριο μπορεί να «σπάσει» και αυτός ο σύνδεσμος ή/και να δίνει σφάλμα το upgrade. Αν προσθέσουμε σε αυτά και την πιθανότητα να ξεχάσει κάποια στιγμή ο φίλος ότι κάποτε έκανε αυτό το symlinking, το ενδεχόμενο να «απολαύσει» γενικευμένο Python breakage αυξάνεται σημαντικά. Εγώ δεν τη θεωρώ καλή μια τέτοια συμβουλή και αυτό είπα παραπάνω.

Ο χαρακτηρισμός προς τους developers μου φάνηκε ειρωνικός, και επειδή βλέπουμε τα γράμματα μόνο και όχι τις εκφράσεις ή το ύφος στα posts, θεωρώ ότι πρέπει να είμαστε λίγο προσεκτικοί στην επιλογή των λέξεων.
Δεν θέλω να κάνω derailed το θέμα, αλλά και στο Arch υπήρχε πρόβλημα με το FreeCAD πρόσφατα.
Θεωρώ ότι είναι χρήσιμα και για τον @kospag οπότε παραθέτω :
https://bugs.archlinux.org/task/73122?project=5&string=freecad

https://forum.freecadweb.org/viewtopic.php?style=5&f=15&t=64573

η εναλλακτική σου για την ώρα, εάν σε ψήνει: Flathub—An app store and build service for Linux

Αν το θέμα του νήματος ήταν οι developers του Manjaro, θα παρέθετα στοιχεία που δείχνουν τον λόγο για τον οποίον έκανα αυτόν τον (πολύ επιεική, πίστεψέ με) χαρακτηρισμό. Αλλά δεν είναι αυτό το θέμα, οπότε το προσπερνάμε.

Πουθενά δεν αναφέρθηκα στο Arch, παρά μόνο σε πρακτικές που ακολουθεί το Manjaro και είναι αποδεδειγμένα (as in προκαλούν προβλήματα κάθε τόσο) λανθασμένες. Όντως, στο Arch υπήρχε πρόβλημα με το FreeCAD πρόσφατα, όπως και με οποιοδήποτε άλλο πακέτο χρησιμοποιούσε βιβλιοθήκες της Python, γιατί άλλαξε η βασική έκδοση της γλώσσας. Αυτό ήταν γνωστό, υπήρξε μαζικό rebuild των Python-based πακέτων όπως γίνεται σε μια τέτοια περίπτωση και βασικά δεν συνέβη κάτι άγνωστο για τη συγκεκριμένη διανομή.

Από όσο γνωρίζω, το Manjaro δεν κάνει προσαρμοσμένο rebuild τα πακέτα του Arch (όπως π.χ. το Ubuntu με το Debian) αλλά τα περισσότερα τα παίρνει αυτούσια. Αυτήν τη στιγμή λοιπόν, η έκδοση του FreeCAD στο Arch είναι η 0.19.3-12 με ενημέρωση στις 4/1 και τουλάχιστον ανοίγει κανονικά (το εγκατέστησα από περιέργεια):

Στο Manjaro όμως, εξαιτίας της σκόπιμης καθυστέρησης για το υποτιθέμενο «testing», η αντίστοιχη έκδοση είναι η 0.19.3-11 με ενημέρωση στις 18/12 (σύμφωνα με έναν mirror) και δεν ανοίγει καν για τον φίλο. Ταυτόχρονα, η διανομή έχει περάσει στην ίδια έκδοση της Python με το Arch και μάλιστα την ίδια μέρα (26/12).

Στη μία διανομή η συγκεκριμένη εφαρμογή λειτουργεί γιατί ακολουθήθηκε ο ορθός τρόπος ανάπτυξης για αυτήν τη διανομή, ενώ στην άλλη που είναι *based δε δουλεύει γιατί παρακάμπτει τον ορθό τρόπο ανάπτυξης, και έχουν περάσει 19 ολόκληρες ημέρες χωρίς ενημέρωση και αντίστοιχα 11 ημέρες από την αλλαγή της Python. Ποιος ο λόγος για αυτήν την καθυστέρηση και την αναντιστοιχία εκδόσεων που προκαλεί πρόβλημα στον φίλο παραπάνω; Το «testing». Αυτό τόνισα και τίποτα περισσότερο.

Αφού λοιπόν το άνοιξες κανονικά στο Arch, δημιούργησε ένα καινούριο project και άνοιξε το arch workbench. Θα το βρεις στην διαδρομή View > Workbench > Arch
Και πες μας τι σου βγάζει.
Απ’ ότι φαίνεται δεν είδες το πρώτο link που έστειλα στο προηγούμενό μου post.

Τελικά εγκατέστησα το flathub freecad

4 «Μου αρέσει»