Hallo, ich habe die Situation das ich eine Lib habe, welche für mehrere Projekte verwendet wird. Jetzt habe ich das Spezial Projekt, wo eine Routine anders sein muss und ich habe einen multiple definition error. Könnt man umgehen wenn man nach dem ersten Ergebnis den Linker abbricht ... habe aber die Vorgabe das gegenteilige Set zu verwenden 🙄. Lösung bisher, das entsprechende object wird aus der lib geschmissen mit dem archiver und dann neu versioniert. Jetzt soll bald aber jeder einfach losbauen können mit neu gelieferten Sub-Komponenten. -> Ich integriere in den build prozess den Ablauf: 1. checke ob reduzierte lib vorhanden 2. wenn nicht erstelle diese mit archiver 3. versioniere das ganze 4. starte den linker prozess -> ist mir eigentlich zu umständlich Jetzt dachte ich, es gibt ja immer mal wieder den Fall das man sich überschneidende Libs hat oder mit unterschiedlicher Version wo man das eine oder andere noch aus der alten Lib anziehen muss. Konnte nichts finden, aber gibt es da echt keine Option um im lsl script zu sagen ignoriere das folgende object aus lib.a oder das symbol aus lib.a? Ich habe zumindest gerade nichts gefunden. Da mir ein solches Thema aber nicht zum ersten mal unter kommt, kann mir nicht vorstellen das es da wirklich keine Option gibt 🤔. Ich hoffe gerade, das ich einfach zu doof zum suchen bin 😅
squierrel schrieb: > Jetzt dachte ich, es gibt ja immer mal wieder den Fall das man sich > überschneidende Libs hat oder mit unterschiedlicher Version wo man das > eine oder andere noch aus der alten Lib anziehen muss. Nein. > Da mir ein solches > Thema aber nicht zum ersten mal unter kommt, kann mir nicht vorstellen > das es da wirklich keine Option gibt 🤔. > Ich hoffe gerade, das ich einfach zu doof zum suchen bin 😅 Nein, bist du (vermutlich) nicht. Das du nichts findest, könnte dir aber eine Hinweis geben, daß dein Problem nicht die fehlende Option ist, sondern ein völlig vermurkstes Konzept. Oliver
:
Bearbeitet durch User
Vermurkst trifft es schon. Nur leider ist die Realität nicht immer ein Wunschkonzert ... und wenn man sauber arbeitet sind solche Themen ja eigentlich auch gut händelbar.
Da muesstest du die Lib wohl so "patchen", dass die unerwuenschten Objekte das Attribut weak haben. Vielleicht reicht es, im Headerfile der Lib die Funktionen mit diesem Attribut zu versehen.
squierrel schrieb: > Jetzt habe ich das Spezial Projekt, wo eine Routine anders sein muss und > ich habe einen multiple definition error. Die erste Frage, die sich doch sofort stellt, ist, warum die Spezialfunktion die selbe Signatur haben muß wie die normale Funktion aus der lib? Oliver
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.