Page 1 of 1

Noesis & MinGW & MSVC & Few Problems

Posted: 07 Feb 2013, 02:28
by Erio
Hey guys.

Here is my question, at the moment, i know (or at least, I guess) that Noesis is mainly working with MSVC (2010 probably?).

Will there be a MinGW compatible version?

I've actually hardly tried to set up an application using MinGW and the QtCreator IDE. After hours working on the configuration, I finally successfully made an hybrid project file. (That can both compile using MinGW or MSVC, depending on your, and that can be changed anytime)

When i try to compile using MinGW:

I get an error in NsCore/Types.h
#if _MSC_VER < 1600
#include <crtdefs.h>
#else
#include <stdint.h>
#endif
With this error:
C:\NoesisGUI-0.9.7.3917\NoesisGUI\Include\NsCore\Types.h:12: error: crtdefs.h: No such file or directory
Seems legit as it's asking for the MSVC version. MinGW fit automatically the condition.

Then i tried to "override" it, that it uses
#include <stdint.h>
.
It gets even worse and some types become to get undefined etc.

I didn't get forward of this at the moment.

Now, the MSVC side.

No errors until i try to compile....

Getting this:
Error: Invalid macro invocation found in D:\Projets\Ogre\TestOgreQt\Makefile.Release line 62
jom: D:\Projets\Ogre\TestOgreQt\Makefile [release] Error 2
02:19:09: The process "C:\Qt\Qt5.0.1\Tools\QtCreator\bin\jom.exe" exited with code 2.
Error while building/deploying project TestOgreQt (kit: Desktop MSVC 2010 (X86))
When executing step 'Make'
Here.. To be honest, i don't have any idea of where can be the problem.

Makefile l. 62:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -FoTestOgre\msvc\object_release\ @<<
So yeah. Do you plan to build a MinGW version of Noesis? :)

(I think it might be convenient to get it, it could fit with OpenGL. Both are portable to Linux system at least, and it would be great if Noesis can be working on the maximum of the existing and used systems, Windows, Linux, and MacOS at least)

Re: Noesis & MinGW & MSVC & Few Problems

Posted: 07 Feb 2013, 20:18
by TheSHEEEP
Well, the big problem with MinGW is that there are MANY different MinGW versions around (MinGW, mingw-64, etc.) and of each of those, new versions get released as soon as GCC is updated. Which happens very often.

This leads to any MinGW binaries being released being quite possibly incompatible with all the other MinGW versions. So, when offering MinGW binary releases, you would actually have to release a lot of them to cover all the different current versions.

MinGW really is all about "build-it-yourself", just as GCC in general.

That said, this makes an affordable source code version of NoesisGUI all the more important.

Re: Noesis & MinGW & MSVC & Few Problems

Posted: 08 Feb 2013, 03:47
by Erio
I agree, but you're not forced to used the latest MinGW version, if there's a stable version released with the package (for example, at the moment 4.7.2), there shouldn't be any problem, and actually, the big problem with MinGW is that they're stopping to use SJLJ debugs and uses DWARF one (this may be even more complicated, but that's what made me get some issues with OGRE and Qt recently)

And i agree on your last point too :)

Btw: No idea for the MSVC error? :p

Re: Noesis & MinGW & MSVC & Few Problems

Posted: 08 Feb 2013, 15:09
by jsantos
This is the current version of Types.h (compiling with gcc4.6):
#ifndef __CORE_TYPES_H__
#define __CORE_TYPES_H__


#if defined(_MSC_VER) && _MSC_VER < 1600
#include <crtdefs.h>
#else
#include <stdint.h>
#include <cstddef>
#endif
I think this should work with MinGW too.

About NoesisGui with MinGW, for now we cannot provide binaries because we are focused on finishing v1.0. As we are going to provide source code licenses, we expect that in the future NoesisGui will reach more platforms.

Re: Noesis & MinGW & MSVC & Few Problems

Posted: 08 Feb 2013, 18:14
by Erio
Thanks :)

I'll try it with my current code ^^

I understand. And i hope so !

EDIT: At the moment the compilation's going straight and working :) I still have a few issues to fix, but that aren't related to Noesis ^^