openSUSE:ARM distribution howto
Πως να δουλέψετε σε openSUSE:Factory:ARM
Το openSUSE Build Service έχει ένα shadow project του openSUSE:Factory που κατασκευάζει(builds) όλο τον κώδικα για ARM.
Χρησιμοποιόυμε δύο αρχιτεκτονικές για τα εκτελέσιμα:
- armv5el που βγαίνει από το armv5tel που χρησιμοποιεί soft floating point
- armv7l που χρησιμοποεί hardware floating point (συναντιέται και armv7hl σε άλλες διανομές)
Μέχρι τώρα όλα τα πακέτα κατασκευάζονται στον προσομοιωτή qemu χωρίς acceleration tricks (βελτιώσεις απόδοσης). Προσπαθούμε να χρησιμοποιούμε native compiler και assembler.
Μέχρι τώρα τα προβλήματα είναι:
- Παρακαλούμε να χρησιμοποιείτε osc, build, qemu and build-initvm από το openSUSE:Tools:Unstable project για να έχετε όλες τις απαραίτητες διορθώσεις.
- armv5el φαίνεται να έχει καποιο λάθοε στη μεταγλώτηση που μπορεί να χαλάσει την rpm database κατά την κατασκευή του συστήματος κατασκευής.
Γενικά μπορείτε να ελένχετε τι δεν κατασκευάζεται μέσα από το monitor page. Για τη διόρθωση ενός πακέτου παρακαλούμε καταθέστε το στο openSUSE:Factory project γιατί openSUSE:Factory:ARM έχει κάποιο πρόβλημα (it links against it and uses all sources from there).
Για παράδειγμα για να διορθώσετε το πακέτο hello τρέξτε τις παρακάτω εντολές:
- osc bco openSUSE:Factory hello # ΜΗΝ χρησιμοποιήσεις openSUSE:Factory:ARM
- cd openSUSE:Factory/hello or cd home:<username>:branches:<branched base project name>/hello
- fix the stuff
- osc build --no-verify --alternative-project=openSUSE:Factory:ARM standard armv7l hello.spec
Σημείωση: η τοπική κατασκευή δουλεύει μόνο σε arm hardware και σε x86_64 συστήματα (χρησιμοποιώντας qemu-linux-user).
- osc vc # για να σχολιάσετε την αλλάγη σας στον τελικό χρήστη
- osc ci # έλενχος...
- osc sr # κατάθεση στο devel project που θα το προωθήσει στο factory.