Das ist der minimale Teil von Linux, den Garmin im Zuge der GPL veröffentlichen muss. Mit einem GPS System hat das vorerst wenig zu tun.
Nimm es mir nicht allzu übel, aber aus deinen Frage kann man erkennen, dass Du von Softwareentwicklung wirklich null Ahnung hast. Meinst Du nicht, dass Du erst mal dünne Bretter bohren solltest, anstatt gleich mit "Navigation und allem was dazugehört" anzufangen? Vorher sollten Dir solche Begriffe wie Compiler, SDK, Build Evironment, Crosscompiler, Embedded System etwas sagen, ohne dass Du lange danach fragen musst.
Oder anders ausgedrückt: Kein Schreiner kann Dir mal so eben einen Tip geben, wie man Möbel baut, solange Du nicht grundlegende handwerkliche Fähigkeiten zur Holzverarbeitung erworben hast.
Ich würde Dir empfehlen eines dieser kleinen Microcontroller Boards, wie das Raspberry Pi zu besorgen. Dazu einen schönen GPS Chipsatz, der sich mit einer normalen seriellen Schnittstelle auslesen lässt. Und dann die Daten von dem Chipsatz mit einer einfachen Skriptsprache wie Python auslesen. Wenn das funktioniert hast Du schon mal einen ersten Schritt in Richtung eines Embedded System erfolgreich gemeistert.
Alternativ kannst Du auch ein Smartphone benutzen und mit Java GPS Daten auslesen und weiterverarbeiten. Das ist sogar noch einfacher, weil es schon eine fertige SDK gibt, die gut dokumentiert ist. Und mit Eclipse hast Du auch schon eine fertig eingerichtete IDE.
Es gibt zudem noch viele OpenSource Projekte für Navigation. Eines davon ist Navit. Aber auch dort gilt: Um es zu benutzen muss man sein Handwerkszeug beherrschen. Die Entwickler werden keinen Nerv haben Dir alles von der Pike an zu erklären.