【发布时间】:2014-03-09 17:09:08
【问题描述】:
MinGW 是否支持__declspec(dllexport)/__declspec(dllimport)?即使是这样,我是否应该使用__attribute__((visibility("default")))?基本上我应该根据平台还是编译器来决定使用什么?
应该这样吗?
#ifdef _MSC_VER
# ifdef MYLIB_EXPORTS
# define MYLIB_API __declspec(dllexport)
# else
# define MYLIB_API __declspec(dllimport)
# endif
#else
# define MYLIB_API __attribute__((visibility("default")))
#endif
还是这样?
#if defined(_WIN32) || defined(_WIN64)
# ifdef MYLIB_EXPORTS
# define MYLIB_API __declspec(dllexport)
# else
# define MYLIB_API __declspec(dllimport)
# endif
#else
# define MYLIB_API __attribute__((visibility("default")))
#endif
那么像__declspec(align(16)) 之类的东西呢? __attribute__((aligned(16)))?
【问题讨论】:
标签: c dll mingw shared-libraries