Я использую autotools как систему сборки для моей библиотеки. Недавно библиотека портирована в Windows. Библиотека успешно компилирует и связывает, хотя я обнаружил странную ошибку. После настройки и создания есть только статические библиотеки. Evertything выглядит нормально, за исключением предупреждения от libtool
:libtool: undefined символы не разрешены t в i686-pc-mingw32 shared
libtool: undefined symbols not allowed in i686-pc-mingw32 shared
Я экспортируемого все символы для машин Windows, с помощью этого кода:
#ifdef _WIN32
# ifdef DLL_EXPORT
# define LIBRARY_API __declspec(dllexport)
# else
# define LIBRARY_API __declspec(dllimport)
# endif
#endif
#ifndef _WIN32
# define LIBRARY_API
#endif
И в каждом определении у меня есть:
class LIBRARY_API myClass {
// ...
Примечания:
Опера тин Система: Windows 8 x86_64
Compiler Suite: MinGW x86_64, MSYS x86