Altnernatives putchar() bei Keil-Compiler

Gast #127011
Hallo Leute,

ich habe den Keil C166 mit µVision3. Jetzt möchte ich die
printf()-Ausgabe umleiten. Dazu habe ich die Original-Routine aus dem
lib-Ordner in mein Projektunterverzeichnis kopiert und zum Projekt
hinzugefügt.

Dann habe ich die Routine (also die kopierte) modifiziert, dass die
Ausgabe da hingeht, wo ich will. Alles läst sich kompilieren. Bisher
hat das auch alles prima funktioniert. Jetzt habe ich ein Update
heruntergeladen und verwende den C++-Compiler EC++.

Jetzt tritt beim Erstellen des Projekts der Linker-Fehler L7 auf. Der
Fehler bedeutet, dass er beim Linken "putchar" mehrmals gefunden hat
und deshalb keins von beiden nimmt.

Jetzt meine Frage : Wie kann ich dem Linker mitteilen, welches putchar
er nehmen soll ?

Im Linker-String, welchen die IDE µVision3 erstellt, steht mein
putchar.obj drin. Die Hilfe zum Linker und zum Studio gibt nicht viel
her (zumindest habe ich dort nichts gefunden). In der Knowledge-Base
von Keil steht auch immer nur "putchar kopieren und zum Projekt
hinzufügen, geht". Das hilft mir leider auch nicht.

Danke im Vorraus, Khani

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.