2011-06-04 141 views
0

我想用C++构建跨平台静态链接库。构建C++跨平台静态库

我该如何做到这一点(我是一个完整的NOOB,从来没有使用过g ++,gcc,mingw等我在网上找了解我的问题的解决方案,但没有找到任何东西。用于Windows的极简主义GNU ...)?我一直在windows上使用Visual C++,但现在我必须构建lib,它将连接到Qt项目:windows,mac,linux。

如果有谁知道一个很好的教程,使用编译器,以及如何建库,我会感激这里分享他们:)

感谢,愿原力与你

+2

我甚至会忘记尝试它。这不是“noob”应该做的事情。 – 2011-06-04 16:53:21

+0

我的意思是我将它们包含在Qt应用程序中,它将在Mac,Windows,Linux上使用。从这个问题我的问题派生:http://stackoverflow.com/questions/6236603/freetype2-lib-in-qt-problem-with-building – therealszaka 2011-06-04 16:53:32

+1

你的问题来自你是Qt本身和Mac和Linux的新手。你应该学习Qt,同时寻找熟练使用Qt和Mac的人以及精通Qt和Linux的人加入你的团队。 – 2011-06-04 16:57:57

回答

0

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和结构,而不是微软Windows的...

+0

你的意思是他/他应该使用Microsoft QT typedefs和结构而不是Microsoft Windows :-) – 6502 2011-06-04 17:12:17

+0

是的,使用QT提供的而不是Windows SDK提供的(“wtypes.h”或“wctypes.h “)。 – 2011-06-04 18:06:26

+0

也许你应该在发布这个主题之前找出“交叉编译”的含义? – 2011-06-04 18:52:20