在 GCC 或 G++ (Linux) 中使用 __declspec()

Gov*_*h B 4 c linux arm

__declspec() 在 GCC 编译器中有什么用?从一些研究中我发现它是一个 Microsoft 特定的扩展来访问共享的 .dll 库。那么它在 Linux(或像 mqx 这样的 Rots)中有什么用?这是我发现的一段示例代码,它是用 GCC 编译的。

__declspec(section "configROM")
Run Code Online (Sandbox Code Playgroud)

dan*_*ter 5

我会想象一个ARM运行一些不起眼的WindowsX / ARM系统还需要你__declspec; 相反,您__declspec在 Linux/x86 上没有任何意义。

AFAIK,

__attribute__((visibility("default")))
Run Code Online (Sandbox Code Playgroud)

__declspec(dllimport)我所知,在 linux 中没有等价物。

dllimport/dllexport

在 cygwin、mingw 和 arm-pe 目标上,__declspec(dllimport) 被认为是 __attribute__ ((dllimport)) 的同义词,以便与其他 Microsoft Windows 编译器兼容。

看看 GCC 的这种可见性支持,https://gcc.gnu.org/wiki/Visibility

  • 我的系统正在运行 MQX RTOS,它根本不基于任何 Windows 操作系统。它用于从 ROM 获取配置文件。 (3认同)