一个eclipse C++;项目链接不同平台的不同库? 我有一个C++ Eclipse项目,我希望在Windows和OSX中轻松编译。p>
项目当前正在使用自动生成的makefile 我需要的库因平台而异 在osx中,我使用CoreMidi、CoreAudio和CoreFoundation框架。 在Windows中,我使用winmm.lib和多线程库 根据当前平台,链接不同库/框架的最简单方法是什么 我目前正在OSX上使用gcc工具链。我应该开始使用交叉编译工具链吗 我应该有两个项目。一个用于在windows中工作,另一个用于osx,将它们都签入版本控制一个eclipse C++;项目链接不同平台的不同库? 我有一个C++ Eclipse项目,我希望在Windows和OSX中轻松编译。p>,c++,eclipse,linker,cross-compiling,C++,Eclipse,Linker,Cross Compiling,项目当前正在使用自动生成的makefile 我需要的库因平台而异 在osx中,我使用CoreMidi、CoreAudio和CoreFoundation框架。 在Windows中,我使用winmm.lib和多线程库 根据当前平台,链接不同库/框架的最简单方法是什么 我目前正在OSX上使用gcc工具链。我应该开始使用交叉编译工具链吗 我应该有两个项目。一个用于在windows中工作,另一个用于osx,将它们都签入版本控制 我是否应该编写一个自定义makefile,而不是使用自动生成的选项,该选项根据
我是否应该编写一个自定义makefile,而不是使用自动生成的选项,该选项根据平台的不同具有不同的g++参数?根据您的描述,我不确定您是否可以轻松地跨平台编写。即使不使用第三方库,也必须为osx和windows提供单独的代码。大多数时候,他们首先将系统设计为跨平台的。要使一个现有的项目在单个平台上跨越一个平台是非常困难的。如果你有跨平台的需求,你最好先以这种方式设计,然后从头开始重写。根据你的描述,我不确定你是否能轻松实现跨平台。即使不使用第三方库,也必须为osx和windows提供单独的代码。大多数时候,他们首先将系统设计为跨平台的。要使一个现有的项目在单个平台上跨越一个平台是非常困难的。如果你有跨平台的需求,你最好先以这种方式进行设计,然后从头开始重写。我个人对一个项目有相同的目标,并得出结论,这对我来说是最好的。它可以处理多种语言、unicode字符串、XML、网络通信、本地用户界面和控制台应用程序:它可以做很多事情 然而,正如保罗指出的,你真的必须从一开始就计划好 <> > Qt在抽象的平台(在一个名为QtCar的模块)中允许你编写香草C++代码,或者你可以选择包括一些Qt C++语言扩展,QT帮助程序称为MOC(元对象编译器),它创建了香草C++,然后可以由大多数普通的C++编译器编译。 它还有一个漂亮的跨平台makefile生成器,名为qmake,它处理项目文件,为其运行的平台创建普通make文件
在我看来,目前至少支持Windows XP&7、OSX 10.4、10.5、10.6。但请注意,OSX Lion(在撰写本文时)尚未得到官方支持,但我怀疑它会出现在下一版本中。我个人对一个项目有相同的目标,并得出结论,这对我来说是最好的。它可以处理多种语言、unicode字符串、XML、网络通信、本地用户界面和控制台应用程序:它可以做很多事情 然而,正如保罗指出的,你真的必须从一开始就计划好 <> > Qt在抽象的平台(在一个名为QtCar的模块)中允许你编写香草C++代码,或者你可以选择包括一些Qt C++语言扩展,QT帮助程序称为MOC(元对象编译器),它创建了香草C++,然后可以由大多数普通的C++编译器编译。 它还有一个漂亮的跨平台makefile生成器,名为qmake,它处理项目文件,为其运行的平台创建普通make文件
在我看来,目前至少支持Windows XP&7、OSX 10.4、10.5、10.6。但请注意,OSX Lion(在撰写本文时)尚未得到官方支持,但我怀疑它将出现在下一个版本中。尽管Eclipse可以在OSX和Windows上正常运行,但它并不是设计用于这种方式的 最好的方法是为每个平台使用单独的IDE项目。这是为多个平台提供唯一编译设置的最简单方法
是的,您可以使用两个eclipse项目。或者,有一个用于OSX的X代码项目和一个用于MS Windows的VisualStudio项目也很常见 尽管Eclipse可以在OSX和Windows上都很好地运行,但它并不是设计用于这种方式的 最好的方法是为每个平台使用单独的IDE项目。这是为多个平台提供唯一编译设置的最简单方法
是的,您可以使用两个eclipse项目。或者,有一个用于OSX的X代码项目和一个用于MS Windows的VisualStudio项目也很常见 我现在才开始做这个项目,所以“从头重写”还不算太晚——我是否只需要将依赖于平台的代码抽象到特定于平台的库中?也许我应该把这个问题重新表述为“如何在不同平台上链接不同的库”我现在才开始着手这个项目,所以“从头重写”还不算晚——我是否只需要将依赖于平台的代码抽象到特定于平台的库?也许我应该把这个问题改为“如何在不同平台上链接不同的库”