Compile Spring on Windows vs Linux

Compile Spring on Windows vs Linux

Discuss the source code and development of Spring Engine in general from a technical point of view. Patches go here too.

Moderator: Moderators

Super Mario
Posts: 823
Joined: 21 Oct 2008, 02:54

Compile Spring on Windows vs Linux

Post by Super Mario »

abma wrote:
i guess so, yes.
Forgotten this already abma?

Besides the reasons regarding the warnings are garbage.

"Compiling is often slower on windows "
I tested this a year back and the differences is minimal (around 1-2 minutes IRC).

"Compiling on windows is poorly tested (which possibly leads to some random / unknown / weird errors) "
Do you mean the lack of having a build slave on windows for VC here?
Abma you and I have already worked on to setting up a build slave. You just need a volunteer regarding setting up a window server for spring VC. I do not have the means of providing one for this btw.

"Setting up a build environment takes a lot more time on windows "
According to who? It can take around 5 minutes for a simple mingw compile setup.

@Dakara
Volunteers are welcome. Post any troubles you have here, so that others can help you resolve them.
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Compile Spring on Windows vs Linux

Post by abma »

split the thread as its really off-topic to the original post.
Super Mario wrote:"Compiling is often slower on windows "
I tested this a year back and the differences is minimal (around 1-2 minutes IRC).
then you confirmed it. Did you test on a SSD or HDD? I would except the difference on a HDD to be much greater as NTFS performs very bad with many small files.
"Compiling on windows is poorly tested (which possibly leads to some random / unknown / weird errors) "
Do you mean the lack of having a build slave on windows for VC here?
Abma you and I have already worked on to setting up a build slave. You just need a volunteer regarding setting up a window server for spring VC. I do not have the means of providing one for this btw.
A LOT of automatic tests run with gcc. even with a VC buildslave the gap would be huge.
"Setting up a build environment takes a lot more time on windows "
According to who? It can take around 5 minutes for a simple mingw compile setup.
apt-get install <required packages> vs download installer of mingw, git, ... + manually install.

i'm not sure if this was a troll post or if you had some serious reason to ask these questions. i can only to recommend to use a linux based OS (ubuntu or debian) so you can compare yourself.
Super Mario
Posts: 823
Joined: 21 Oct 2008, 02:54

Re: Compile Spring on Windows vs Linux

Post by Super Mario »

Will you stop splitting threads amba!?

(I hate the quote system btw)

"then you confirmed it."

But it isn't that bad to warrant a warning!!


"Did you test on a SSD or HDD? I would except the difference on a HDD to be much greater as NTFS performs very bad with many small files."

HDD

"A LOT of automatic tests run with gcc."

Amba it is not saying anything about unit testing(At least that is what I think your saying if not clarify please), it says that "Compiling on windows is poorly tested (which possibly leads to some random / unknown / weird errors) "
I.E. the process of compiling, not the result of the compiling.



"apt-get install <required packages> vs download installer of mingw, git, ... + manually install."

That's no different from simply download installations and libraries. That is your option, not a fact, nor does it justify the warning.

"i'm not sure if this was a troll post or if you had some serious reason to ask these questions."

Some of them are NOT "warnings" but mildly inconveniences, and other is very debatable statements when it comes to factual correctness. Warnings are revered when something DANGEROUS is involved here,(personal files being deleted for example). You are potentially discourage window developers here by misusing the term.
i can only to recommend to use a linux based OS (ubuntu or debian) so you can compare yourself.
Which I did already, seriously does it need to be faster than Linux in order to remove that warning? A mere couple minutes is not going to kill you.
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Compile Spring on Windows vs Linux

Post by abma »

Super Mario wrote:Will you stop splitting threads amba!?
i will split threads when posts are offtopic.
Super Mario wrote:That's no different from simply download installations and libraries. That is your option, not a fact, nor does it justify the warning.
3 seconds copy and paste to install vs. 10 minutes of surfing / searching / downloading / installing and maybe repeat from the beginning because the wrong compiler was installed.



Super Mario wrote:Some of them are NOT "warnings" but mildly inconveniences, and other is very debatable statements when it comes to factual correctness. Warnings are revered when something DANGEROUS is involved here,(personal files being deleted for example). You are potentially discourage window developers here by misusing the term.
The warning is there because devs using MSVC very likely will hit an error which they can't solve and then ask here in the forum wasting our and their time.

Super Mario wrote:Amba it is not saying anything about unit testing(At least that is what I think your saying if not clarify please)
the tests include compiling.
Super Mario
Posts: 823
Joined: 21 Oct 2008, 02:54

Re: Compile Spring on Windows vs Linux

Post by Super Mario »

"3 seconds copy and paste to install vs. 10 minutes of surfing / searching / downloading / installing and maybe repeat from the beginning because the wrong compiler was installed."

I call bull on that statement. There is no way it could take that long unless
1.)You have no idea what your doing
2.)You have ridiculous installation and download speed on linux than on windows, which I am pretty that the change of OS makes no difference to this regard.

Regardless even it did take that long, it doesn't merit a warning label for a minor inconvenience.




"The warning is there because devs using MSVC very likely will hit an error which they can't solve and then ask here in the forum wasting our and their time."

Oh so you consider compile errors spotted by MSVC a "waste of time". Well then, by all means remove VC support from cmake it you consider to be "waste time".



"the tests include compiling"
That's why you use a build slave for!
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Compile Spring on Windows vs Linux

Post by abma »

there is no reason to remove this warning as compiling on windows is much more problematic, just some cherry-picked reasons:

- setting up the build env takes much more time and is error-prone: linker errors, missing env vars, etcetc. on a debian based linux this just works.
- the build possible doesn't sync to the official builds
- more devs use linux in spring community and can't help with problems
- majority of build slaves use linux and test multiple compiler versions (!)

-> mostly drawbacks on using windows for developing spring

as long as the problems on windows still exist the should stay as it is. the warning was added because several people had problems setting up / compiling spring on windows, just search the forum.
Super Mario
Posts: 823
Joined: 21 Oct 2008, 02:54

Re: Compile Spring on Windows vs Linux

Post by Super Mario »

You are conflicting some minor inconvenience with severity here.
"- majority of build slaves use linux and test multiple compiler versions (!)"

...Did you forget the work that we did to set up a VC one!? I didn't set up one officially, as I lack the infrastructure to set up a build server 24/7. Why didn't you ask volunteers!?

"- setting up the build env takes much more time and is error-prone: linker errors, missing env vars, etcetc."

You are being unreasonable to the point that I literally rage at this.
I painstakingly created libraries for vc 2015, which since then, fixes are being made by other people. Which fyi it's not hard to download and install the VC cpp tool chain and the associated prebuilt libraries for it. Support for it has been greatly improved since then. Support for 64 bit mingw has been added. Things DID get better.

BUT APPARENTLY we should all disregard the progress being made due to a few minor inconvenience!

You want things to get better on windows!? THEN ENCOURAGE THEM, DO NOT DISCOURAGE THEM!!!! You are certainly not encouraging anyone with that warning sign with it's highly disputable reasoning behind it.
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Compile Spring on Windows vs Linux

Post by abma »

what do you suggest then to improve the situation?
Super Mario
Posts: 823
Joined: 21 Oct 2008, 02:54

Re: Compile Spring on Windows vs Linux

Post by Super Mario »

abma wrote:what do you suggest then to improve the situation?
Here is some ideas:

Find a volunteers to is willing to set up a 24/7 windows build slave for vc and mingw64.(I can't do this for reasons that I have already given)
Remove the stupid warning sign, and submit the issues that you have with it on mantis for other people to fix.
Update the minimum cmake requirements to take advantage of new features such as the CXX_STANDARD_REQUIRED boolean for example or to check if a compiler have a certain feature or not. This will help a lot when it comes to managing different compilers.
Actively seek out volunteers.
Scheduled meetings with the new devs to talk about things that can be done by them and to ask any questions from the new devs.
gajop
Moderator
Posts: 3051
Joined: 05 Aug 2009, 20:42

Re: Compile Spring on Windows vs Linux

Post by gajop »

I have mixed thoughts about this. I don't think solutions where you suggest others do arbitrary PR assignments work. "Do marketing. Find people" - "Sure, how?". This is when community members who suggest it should step in and involve themselves, and at the same time be given the support to do it.

So:
Super Mario wrote: Find a volunteers to is willing to set up a 24/7 windows build slave for vc and mingw64.(I can't do this for reasons that I have already given)
Actively seek out volunteers.
@SuperMario Are you willing to help with this? (Find volunteers/figure out a concrete way to recruit new volunteers/devs/contributors) How can we support you to achieve this?
Super Mario wrote: Remove the stupid warning sign, and submit the issues that you have with it on mantis for other people to fix.
The existence of the warning sign isn't that important. Let's take steps to solve the reason why @abma wants to keep the warning, and the sign will disappear with it. (It's not the cause of issues, but rather the effect).
Super Mario wrote: Update the minimum cmake requirements to take advantage of new features such as the CXX_STANDARD_REQUIRED boolean for example or to check if a compiler have a certain feature or not. This will help a lot when it comes to managing different compilers.
Seems like a smart move.
Super Mario wrote:Scheduled meetings with the new devs to talk about things that can be done by them and to ask any questions from the new devs.
This would be very nice. I'm an engine contributor and I plan to keep being one. Since I don't have the time to work more on it I will always be and feel like a contributor, so I want to consult core devs. I'd like to have a medium to do it (which isn't hunting @hokomoko on Discord). Any suggestions? Should we just use the forums for future/WIP work, or can we perhaps revive a more inclusive version of the old engine dev meetings and invite existing and new/potential contributors to it?
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: Compile Spring on Windows vs Linux

Post by Forboding Angel »

Why not just set up an engine dev discord server and don't send out non-expiring invites (the server admin can delete non-expiring invites). Moreover, in discord you can restrict who is capable of sending out invites. You can send invites to prospects for meetings then kick those users from the server.

It already has all the tools you need, so there isn't really a downside.
gajop
Moderator
Posts: 3051
Joined: 05 Aug 2009, 20:42

Re: Compile Spring on Windows vs Linux

Post by gajop »

Communication tools aren't the problem currently, but I can certainly imagine them becoming a problem because people are reluctant to use Discord due to its proprietary nature. This kind of dev engine chat can only happen if engine devs see a need/reason to do it.
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Compile Spring on Windows vs Linux

Post by abma »

Why not just set up an engine dev discord server and don't send out non-expiring invites (the server admin can delete non-expiring invites). Moreover, in discord you can restrict who is capable of sending out invites. You can send invites to prospects for meetings then kick those users from the server.
because it very likely can never replace the current lobby server + some more reasons. also this is 100% off-topic. I guess you didn't read the threads title?

I'm getting sick of this discussion.

Everything that requires the workhorses to spent more time is bad. Removing the warning makes me and other core devs spent more time in supporting devs which tried to setup compile spring on windows and badly failed. Using discourd requires me and others spent more time.

VERY BAD!

I'm done with this thread, sorry. This is way to much talk.
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Compile Spring on Windows vs Linux

Post by abma »

@Super Mario:

some last words wrt this, what you could do:

- create a post in the community support about MSVC support
- find out if someone at all is / how many are using it
- find out the issues
- check if it syncs or why it doesn't sync
- create the issues you suggested in mantis
- ...
User avatar
FLOZi
MC: Legacy & Spring 1944 Developer
Posts: 6241
Joined: 29 Apr 2005, 01:14

Re: Compile Spring on Windows vs Linux

Post by FLOZi »

Removing the warning makes me and other core devs spent more time in supporting devs which tried to setup compile spring on windows and badly failed.
And really, how many is that? :regret:

Any number greater than 0 means that it is worth doing as we can't afford to be turning away potential engine devs afaics.
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Compile Spring on Windows vs Linux

Post by abma »

FLOZi wrote:Any number greater than 0 means that it is worth doing as we can't afford to be turning away potential engine devs afaics.
Is it better to disrupt the current devs from their work?

This warning was added because several people failed to compile spring. Even with a lot of help they just gave up, i'm not sure if this is better as its REALLY frustrating when supporting such people.

Removing the warning doesn't solve the problems, IMO its better to be honest from the beginning. The layout could be improved but IMO all points are still valid.

creating a dedicated wiki page for compiling using MSVC would improve the situation, too.

This thread failed from the beginning as it wasn't constructive IMHO, it was just a rage.
User avatar
FLOZi
MC: Legacy & Spring 1944 Developer
Posts: 6241
Joined: 29 Apr 2005, 01:14

Re: Compile Spring on Windows vs Linux

Post by FLOZi »

abma wrote:
FLOZi wrote:Any number greater than 0 means that it is worth doing as we can't afford to be turning away potential engine devs afaics.
Is it better to disrupt the current devs from their work?

This warning was added because several people failed to compile spring. Even with a lot of help they just gave up, i'm not sure if this is better as its REALLY frustrating when supporting such people.

In the last year?
Removing the warning doesn't solve the problems, IMO its better to be honest from the beginning. The layout could be improved but IMO all points are still valid.

creating a dedicated wiki page for compiling using MSVC would improve the situation, too.
The phrasing of the warning is somewhat negative, imo, and frankly dubious. It should be more along the lines of 'Compiling on MSVC is not generally supported and Windows users will find it easier to compile Spring with GNU GCC following these instructions: ...'. +1 for a dedicated page for MSVC, part of the issue is the conflation of OS and compiler.
Super Mario
Posts: 823
Joined: 21 Oct 2008, 02:54

Re: Compile Spring on Windows vs Linux

Post by Super Mario »

FLOZi wrote:
abma wrote:
FLOZi wrote:Any number greater than 0 means that it is worth doing as we can't afford to be turning away potential engine devs afaics.
Is it better to disrupt the current devs from their work?

This warning was added because several people failed to compile spring. Even with a lot of help they just gave up, i'm not sure if this is better as its REALLY frustrating when supporting such people.

In the last year?
The phrasing of the warning is somewhat negative, imo, and frankly dubious. It should be more along the lines of 'Compiling on MSVC is not generally supported and Windows users will find it easier to compile Spring with GNU GCC following these instructions: ...'. +1 for a dedicated page for MSVC, part of the issue is the conflation of OS and compiler.
To add on that statement:
'Compiling on MSVC is not generally supported and Windows users will find it easier to compile Spring with GNU GCC following these instructions( However volunteers are welcome on improving the situation regarding MSVC!): ...'.
Super Mario
Posts: 823
Joined: 21 Oct 2008, 02:54

Re: Compile Spring on Windows vs Linux

Post by Super Mario »

abma wrote: This warning was added because several people failed to compile spring.
Which is the result of development of windows being an afterthought rather than a core focus. The situation which me and other people are trying to improve. I certainly can't improve it all by myself, as the last time I did it, I couldn't fix all the compile errors that it was having as it involves dark magic marcos, (which the gcc seemed to fail to catch during that time). The fixes where made, because one of the current devs manged to fix it, after I mantis it.

Improvement of the situation is going to take involvement from the core devs. If you honestly think it's a waste of time, then remove support on windows, so that others won't waste their time.

Edit: it's literally the chicken or the egg problem. (No one develops on windows, because the support is bad. The supports is bad, because no one develops on windows).
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Compile Spring on Windows vs Linux

Post by abma »

Super Mario wrote:Which is the result of development of windows being an afterthought rather than a core focus.
creating a release is already a problem. you suggest to focus on windows development? WTF?

please stop talking.
Post Reply

Return to “Engine”