Linkproblem unter MinGW



  • Sehr geehrte Community,

    Ich hbae hier ein Problem wo ich nicht weiter weiß und nicht sicher bin, ob es ein Linkproblem ist oder nicht. Ich bin Tester einer neuen Library die unter Linux läuft. Kennt jemand dieses Problem einer Doppeldeklarierung in einer Objektdatei?

    c:\MinGW\nfft3dir\bin\libnfft3-0.lib(dmees00056.o)|| multiple definition of `atexit'|
    c:\programme\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\..\..\..\crt2.o:crt1.c|| first defined here|
    c:\MinGW\nfft3dir\bin\libnfft3-0.lib(dmees00048.o)|| multiple definition of `_onexit'|
    c:\programme\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\..\..\..\crt2.o:crt1.c|| first defined here|
    ||=== Build finished: 4 errors, 0 warnings ===|
    

    Ich arbeite mit Codeblocks.

    Besten Dank und schöne Grüße!



  • Ja, idr. ausgelöst durch fehlende Includeguards.



  • HighLigerBiMBam schrieb:

    Ja, idr. ausgelöst durch fehlende Includeguards.

    Includeguards verhindern ein doppeltes Einbinden eines Headers. Das ist hier nicht das Problem. Das Problem ist, dass dass in dmees00056.o eine Funktion atexit() implementiert wurde, die es aber bereits im Standard schon gibt. Also: Wenn das echt in deiner Library vorkommt, dann sollte die Funktion umbenannt werden und der Programmierer sollte sich mal den Standard anschauen.


Anmelden zum Antworten