我想编写一些跨平台的库代码。
我正在创建一个既包含静态库又包含动态库的库,大部分开发是在Linux上完成的。我已经在Linux上生成了静态和共享库,但现在想使用相同的源代码生成Windows版本的静态和动态库,分别为.lib
和.dll
格式。
这是否可行?我有点担心,因为我注意到生成Windows的.dll
文件需要在源代码中使用_dllspec
或类似的东西。
我正在寻求最佳和最快的解决方案来编译我的代码以在Windows上运行。我不需要在Linux下进行编译;我很乐意直接在Windows下编译。此外,我正在使用两个外部库,它们是Boost和Xerces XML,我已经在我的Windows和Linux系统上安装了它们,所以希望它们不会成为问题。
我真正想要的是只有一个源代码副本,可以在Linux和Windows下编译,以生成特定于每个平台的库。我并不介意为了Windows或Linux而编辑我的代码,只要我有一个单一的源代码副本即可。