@Mercury13
Программист на «си с крестами» и не только

MinGW: что за префикс _imp__ и как избавиться от него?

Попробовал статически скомпилировать libZip средствами Qt Creator. Библиотека появилась, обнаружилась, при попытке подключить её к программе вышло вот что.
C:\Mercury\Common\StaxLike\StaxZip.cpp:14: error: undefined reference to `_imp__zip_wopen'
C:\Mercury\Common\StaxLike\StaxZip.cpp:36: error: undefined reference to `_imp__zip_close'

(zip_wopen — моя быстрая переделка zip_open, рассчитанная на Юникод)
Очевидно, я недосчитался каких-то флагов компилятора, но каких?
  • Вопрос задан
  • 1364 просмотра
Решения вопроса 1
@Mercury13 Автор вопроса
Программист на «си с крестами» и не только
Опять приходится отвечать самому. У меня три ошибки.
Раз.
//#define ZIP_EXTERN __declspec(dllimport)
#define ZIP_EXTERN
Очевидно, libzip рассчитана только на компиляцию в DLL, и точка.

Два. -lz. Ну, это понятно, и эта библиотека в нашем дистрибутиве MinGW есть.

Три — не до конца дописал Юникод.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы