Множественное определение Mingw _Раскрутка _резюме

Я знаю, что подобный вопрос уже задавался, но я не мог решить эту проблему в течение нескольких часов.

По сути, у меня есть DLL с кодом и приложение, которое ее вызывает. Все работает нормально, но если я возьму эти два за пределы моей среды разработки, он скажет, что программа не может запуститься, потому что libgcc_s_dw2 1.dllотсутствует на компьютере.

Это достаточно справедливо, учитывая, что это не компьютер для разработки. Так что для дистрибутива я добавил флаги компилятора "-static-libgcc -static-libstdc++". Я сделал это для dll и для приложения.

Но когда я компилирую приложение, я получаю ошибку:

"multiple definition of `_Unwind_Resume'"

Я думал, что это произошло из-за того, что в dll и в приложение встроены статические библиотеки, и это так. Но если они оба не имеют встроенных статических библиотек, программа не будет работать на машинах конечных пользователей.

Как я могу удалить эту ошибку, не имея зависимостей от mingw libs? Моя IDE — это Code ::Blocks.

Давид

РЕДАКТИРОВАТЬ:вот журнал сборки при сборке приложения, которое ссылается на dll:

c:/mingw/bin/../lib/gcc/mingw32/4.6.2/libgcc_eh.a(unwind-dw2.o):(.text+0x298c): multiple definition of `_Unwind_Resume'

..\EquilibriumEngine\bin\Release\libEquilibriumEngine.dll.a(d000015.o):(.text+0x0): first defined here

collect2: ld returned 1 exit status

Process terminated with status 1 (0 minutes, 0 seconds)

2 errors, 0 warnings
6
задан ollo 5 February 2013 в 14:28
поделиться