user34537
user34537

Reputation:

Looking for a set of rich cross-platform libraries for c++

Are their any libraries which provide functionality similar to mono but for the c++ language? I know boost exists, but I like mono much more than boost.

I'm looking to do more than what's available in the base library set, like play sound more easily (crossplatform), GUI, load images, time, etc. I guess I am looking for what people might consider an engine or a large library.

Upvotes: 0

Views: 1000

Answers (7)

Crypto Waffle
Crypto Waffle

Reputation: 21

I'm not sure about your precise requirements, but in terms of large multi-purpose packages: Qt has been mentioned by a few folks. wxWidgets (formerly wxWindows) is another option. GTK is multiplatform.

As you use the word "engine" (often a game-related term), you might be interested in SDL, which has been used by numerous games, professional and amateur alike. SFML is an option. ClanLib is another long-lived library I've heard of, though I'll admit to knowing little about it.

Upvotes: 2

Nemanja Trifunovic
Nemanja Trifunovic

Reputation: 24561

I think you want a multi-platform framework, such as Qt

Upvotes: 11

Justin
Justin

Reputation: 8943

It sounds like what you are really looking for is a C++ framework that offers the kinds of functionality found in the .NET/Mono framework. Qt is a popular choice.

On the topic of C++ interoperability, Mono has recently made some pretty big strides with CXXI.

(From this posting): The short story is that the new CXXI technology allows C#/.NET developers to:

  • Easily consume existing C++ classes from C# or any other .NET language
  • Instantiate C++ objects from C#
  • Invoke C++ methods in C++ classes from C# code
  • Invoke C++ inline methods from C# code (provided your library is compiled with -fkeep-inline-functions or that you provide a surrogate library)
  • Subclass C++ classes from C#
  • Override C++ methods with C# methods
  • Expose instances of C++ classes or mixed C++/C# classes to both C# code and C++ as if they were native code.

CXXI is the result of two summers of work from Google's Summer of Code towards improving the interoperability of Mono with the C++ language.

Upvotes: 0

Yasir Kamal
Yasir Kamal

Reputation: 443

CLI is only able to host C++ compiled code on all supported platforms as long as the compiled code only contains CIL not native code.

for more detail visit http://www.mono-project.com/CPlusPlus

Upvotes: 2

tghw
tghw

Reputation: 25313

If you're wanting to work with Managed C++ a la .Net, then you would just use Mono. They have a page describing how to go about it. The only catch is that you have to compile on Windows, as there is not yet any flavor of GCC that outputs .Net CLI for C++.

To be honest, though, if you're going to use Mono, you might as well move into C#. It's a much cleaner language, IMO.

Upvotes: 9

FlySwat
FlySwat

Reputation: 175653

Try the STL collections...Has nothing to do with .NET, but they are a nice collection of collections (lol) and make C++ life easier.

Upvotes: 0

luiscubal
luiscubal

Reputation: 25161

Mono is a .NET implementation. Mono is NOT a library. There is NO Mono for C++. At least, not yet.

Upvotes: 12

Related Questions