构建C++跨平台静态库
Building C++ cross-platform static libraries
我想用C++构建跨平台静态链接库。
我该怎么做(我是一个完全的NOOB,从来没有使用过g++、gcc、mingw等。我在互联网上寻找解决我问题的方法,但没有找到任何东西。除了mingw是Windows的极简主义GNU…)?我一直在windows上使用Visual c++,但现在我必须构建lib,该lib将附加到用于windows、mac、linux的Qt项目中。
如果有人知道一个关于使用编译器和如何构建库的好教程,我会很高兴在这里分享:)
谢谢,愿原力与你同在。
MinGW是一个非常好的编译器!我一直在用它。尽管MinGW代表Windows的Minimalist GNU,但MinGW拥有用C++或C编程所需的一切。如果你正在创建QT应用程序,我建议你使用QT Creator(只需在谷歌上搜索)。我最近没有使用过它,但我认为它支持跨平台编译(就像MinGW一样,有一些命令行命令…)
不过,交叉编译的最佳方法是获得要编译的每个操作系统的副本。因此,如果你正在使用Windows、Mac和Linux,我建议你每种都买一个(Mac OS X大约25美元,Linux是免费的)。然后只需使用附带的编译器(Mac上的XCode;Linux上的GCC)进行编译。不幸的是,当您执行交叉编译时,您需要单独支持每个操作系统(某些部分可以在操作系统之间共享)。
由于您将使用工具箱(QT),因此您可能不必太担心平台特定的调用或任何事情。只需确保使用QT typedefs和structs,而不是Microsoft Windows。。。
相关文章:
- 如果C++类在类方法中具有动态分配,但没有构造函数/析构函数或任何非静态成员,那么它仍然是POD类型吗
- #为""定义宏;静态";针对不同的上下文
- cmake如何在fedora工作站中找到boost静态库包
- 静态数据成员的问题-修复链接错误会导致编译器错误
- 将公共但非静态的成员函数与ALGLIB集成
- cmake在我的项目中所需的所有静态库都不成功
- C++从另一个类访问公共静态向量的正确方法是什么
- 基于boost的程序的静态链接——zlib问题
- 在静态库中嵌入类方法
- Qt C++静态thread_local QNetworkAccessManager是线程应用程序的好选择吗
- 如何在C++中获得"静态纯虚拟"功能?
- 私有类型的静态常量成员
- 使用gcc从静态链接的文件中查找可选符号
- 在 .h 文件中的类中声明静态变量和在.cpp文件中声明"global"变量有什么区别
- 如何在C++中使用非静态成员函数作为回调函数
- 通过网络、跨平台传递std::变体是否安全
- 将静态库链接到不带-fPIC的共享库中
- 编译wxLua(跨平台和静态)
- 在iOS和Android上跨平台使用静态.a库可能吗?(那么.so和.dylib呢?)
- 构建C++跨平台静态库