wiki:SynBuild

Version 20 (modified by Edwin Eefting, 8 years ago) (diff)

--

Ontwikkelen aan SYN-3

Alle Syn-3 software bevind zich in 1 GIT tree. (git is een opensource versie beheer systeem dat gebruikt word voor vele grote opensource projecten)

Deze tree bevat een groot aantal scripts om het meeste automatisch doen. Deze pagina legt je uit hoe je aan de tree komt en hoe deze is ingedeeld.

Ook zitten alle binaries in deze tree, als mede de source-code en scripts om de binairies zelf te compilen.

Vereisten

Theoretisch kan Syn-3 op alle Linux omgevingen gebouwd worden, omdat pakketjes altijd in een buildroot gecompiled worden. We gebruiken momenteel Slackware, Gentoo, Syn-3 en Ubuntu omgevingen om te bouwen en dit gaat prima.

Je bent in elk geval het volgende nodig:

  • root account
  • rsync
  • git
  • Meer dan 10 gig diskspace
  • 4gig vrij op je /tmp, het liefst met tmpfs. tmpfs+grote swapfile is veeel sneller dan een gewoon filesystem!

Voorbereiding

SYN-3 ontwikkel tree ophalen

Om de ontwikkel tree op te halen is het nodig om de gehele SYN-3 git repository te "clonen", als volgt:

psy@ws1 ~ % git clone http://open.syn3.nl/syn3/git/default opensyn3
Cloning into 'opensyn3'...
remote: Counting objects: 10526, done.
remote: Compressing objects: 100% (7482/7482), done.
Receiving objects:   1% (141/10526), 5.47 MiB | 1.81 MiB/s     
...

Dit duurt een hele tijd (de tree is rond de 5 Gb momenteel)

Hierna vind je in opensyn3 de gehele tree.

Slackware package manager installeren

Deze package manager is nodig om de buildroot te kunnen opbouwen als pakketjes gaat compilen.

Deze installeer je als volgt:

psy@ws1 ~ % sudo bash
root@ws1:~# cd /
root@ws1:/# tar -xzf /home/psy/opensyn3/npl/slackware/pkgtools-10.0.0-i486-1.tgz 

tar 1.13 installeren

Omdat we momenteel nog een oudere pkgtools gebruiken is het nodig dat je tar 1.13 op je host-systeem installeert. (dit is een slackware package management eigenaardigheid)

Dit kan als volgt:

psy@ws1 ~ % sudo cp opensyn3/npl/slackware/tar-1.13 /bin

Werken met git versie beheer

Om de wijzigingen van andere developers binnen te halen doe je af en toe een git pull:

psy@ws1 ~/opensyn3 % git pull
Already up-to-date.

Het is handig om dit regelmatig te doen, en hierna de status te controleren

Er zijn vele andere commandos om bijvoorbeeld je wijzigingen op te slaan of naar DatuX te versturen.

Om te leren hoe git werkt verwijzen we je naar: https://git-scm.com/book/en/v2

Vervolg stappen

  • Voor meer info zie over de indeling van de source tree zie SynTree.
  • Voor meer info over Syn-3 packages bouwen zie: SynPackaging
  • Importeren en compilen van bestaande slackware packages: SynSlackwareImport

Attachments (1)

Download all attachments as: .zip