У меня есть 2 среды сборки с различными версиями MinGW: один настроен для Qt, а другой нет. У обоих, однако, есть статические статические библиотеки Qt (которые в конечном итоге фактически связаны с dll). Проблема в том, что я хочу создать статическую библиотеку в Qt MinGW, а затем включить ее в не Qt MinGW. Я получаю следующие ошибки ссылки, когда я пытаюсь:Как статически связывать библиотеку с другой статической библиотекой?
moc_browser.cpp:(.eh_frame+0x11): undefined reference to `___gxx_personality_v0' browser.cpp:(.text+0x213): undefined reference to `__Unwind_Resume'
Я обнаружил, что Qt MinGW динамически ссылки на стандартные библиотеки, и что мне нужно включить опцию -static-libgcc
. Однако я не знаю, где его использовать, поскольку я не создаю исполняемый файл, а скорее статическую библиотеку.
см. Http://stackoverflow.com/questions/3821916/how-to-merge-two-ar-static-libraries-into-one/9330267#9330267 для опций 'ar' – osgx
Хороший вызов или перейдите к источник: http://sourceware.org/binutils/docs-2.22/binutils/ar-cmdline.html#ar-cmdline – eriktous
и еще один с libtool: http://stackoverflow.com/a/8170851/196561 – osgx