Tématické skupiny v rámci předmětu PB173 Tematicky zaměřený vývoj aplikací v jazyce C/C++

Téma 6: Linker skripty

Teoretická část

  • Linker skripty
  • Verzování knihoven

Praktický úkol pro cvičení

  • Práce s linker skripty

Domácí úkol

  • 1. část
    • Vypište si svůj výchozí linker skript (ld --verbose)
    • Pozměňte ho
      • .data budou začínat na pevně dané adrese
      • Vytvořte si symboly pro začátky a konce sekcí .data a .rodata
    • Vytvořte program, který
      • Adresu začátku sekce .data vypíše
      • Udělá dump obou datových sekcí (.data a .rodata)
      • Slinkujte ho skriptem
    • Výsledkem úkolu jsou 2 soubory
      • unified diff (diff -u) oproti originálnímu skriptu
      • Zdrojový soubor programu, který adresu vypisuje
  • 2. část
    • Vytvořte knihovnu, která bude mít 2 verze funkce compute (bere uint a vrací uint)
      • Jedna vrací číslo o jedna větší než je vstup
      • Druhá počítá faktoriál
    • Výsledkem úkolu je zdrojový soubor knihovny a ldskript pro verzování