NXP MCUXpresso Precompiler Anweisung in Library übernehmen

OP #6093536
Lesenswert?
• ▲
▼
Hallo,

ich habe eine Frage zu der Handhabung der Projekteinstellungen von 
MCUXpresso, mit dem ich meine Projekte verwalte.

Ich habe ein Projekt, welches als Library für andere Projekte dient.
Diese Library wird über die Projekteinstellungen in den Includes in die 
jeweiligen Projekte eingebunden.

Nun habe ich leider ein paar Projekte, die benötigen eine andere 
Pinbeschreibung, die in der Library per #define geregelt ist.

Zur Zeit mache ich es so, dass ich in der Library für das eine Projekt 
das #define mache, die Library compiliere und dann das eigentliche 
Projekt.
Wenn ich ein anderes Projekt compilieren möchte, ändere ich das #define 
in der Library, compiliere diese und compiliere anschließend das 
eigentliche Projekt.
So funktioniert es, aber ich bin auf der Suche nach einer eleganteren 
Lösung, die mir je nach Projekt ermöglicht, das #define zu verändern.

Jemand einen Ansatz wie man so etwas bewerkstelligen kann?

Grüße,
Oliver
Gast #6093547
Lesenswert?
• ▲
▼
in der Lib kannst du Abfragen ob ein define gesetzt ist und wenn nicht 
dann einen default setzen.
1
#ifndef MY_SETTING
2
#define MY_SETTING 42
3
#endif

Jetzt ist die Frage ob Settings vom Hauptprojekt vererbt werden wenn die 
Lib neu gebaut wird. In Eclipse kann man Projektabhängigkeit definieren, 
evtl. geht darüber auch das benutzen übergeordneter/globaler Makros.
#6093585
Lesenswert?
• ▲
▼
Oliver S. schrieb:
> So funktioniert es, aber ich bin auf der Suche nach einer eleganteren
> Lösung, die mir je nach Projekt ermöglicht, das #define zu verändern.
> [...]
> In Eclipse kann man Projektabhängigkeit definieren,
> evtl. geht darüber auch das benutzen übergeordneter/globaler Makros.

Geht AFAIK nicht direkt, da die Library immer unabhängig von dem Projekt 
gebaut wird das sie referenziert.


Was man aber machen kann sind verschiedene Build Konfigurationen für die 
Library, und die Projekte referenzieren dann jeweils "ihr" spezifisches 
Build via "Library search path (-L)". Denn eine Build Konfiguration hat 
jeweils ein eigenes Output Verzeichnis.
OP #6096158
Lesenswert?
• ▲
▼
Jim M. schrieb:

> Was man aber machen kann sind verschiedene Build Konfigurationen für die
> Library, und die Projekte referenzieren dann jeweils "ihr" spezifisches
> Build via "Library search path (-L)". Denn eine Build Konfiguration hat
> jeweils ein eigenes Output Verzeichnis.

Vielen Dank, hab ich genauso gemacht und funktioniert wunderbar.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.