Page 2 of 3

Re: Locating GRUB Binaries for Windows

Posted: Wed May 28, 2014 12:14 am
by iansjack
ScropTheOSAdventurer wrote: About make:

I am talking just Windows.

http://gnuwin32.sourceforge.net/packages/make.htm is the only place where I can find make binaries for Windows.
What about cmake? I use Linux, personally, but it's not the only way to do things. Intolerance has no place in development.

Re: Locating GRUB Binaries for Windows

Posted: Wed May 28, 2014 1:27 am
by ScropTheOSAdventurer
Never heard of cmake :oops: . I wouldn't say I am being intolerant; I am merely a person of habit.

Re: Locating GRUB Binaries for Windows

Posted: Wed May 28, 2014 1:38 am
by Octocontrabass
I'm pretty sure MinGW includes make. (I use MinGW/MSYS instead of Cygwin. Perhaps you should try the same? You'll still have to compile GRUB from source though.)

Re: Locating GRUB Binaries for Windows

Posted: Wed May 28, 2014 1:46 am
by iansjack
ScropTheOSAdventurer wrote:Never heard of cmake :oops: .
In that case I'm guessing that the chances that you have heard of nmake (Microsoft's version of make) are pretty low.

Re: Locating GRUB Binaries for Windows

Posted: Wed May 28, 2014 1:47 am
by ScropTheOSAdventurer
@Octo: If that is the case, then all my arguments relating to Cygwin are irrelevant. However, the latest GCC they (MinGW) offer is nearly three years old (ALREADY NOTED MISTAKE #-o ). Their setup exe is over half a year old while their sourceforge folders are still showing 2013 modification timestamps. That suggests to me that it isn't very actively updated.

Re: Locating GRUB Binaries for Windows

Posted: Wed May 28, 2014 1:51 am
by ScropTheOSAdventurer
@ians: Nope. Although I have used Visual Studio, I just never really dealt with .mak files much, and although I would see them occasionally, I never gave any thought as to what program used them.

Re: Locating GRUB Binaries for Windows

Posted: Wed May 28, 2014 1:57 am
by iansjack
ScropTheOSAdventurer wrote:However, the latest GCC they (MinGW) offer is nearly three years old.
The latest version of GCC offered with MinGW is 4.8.1. That's less than a year old and (I suspect) is probably on a par with many Linux distributions.

Re: Locating GRUB Binaries for Windows

Posted: Wed May 28, 2014 2:00 am
by iansjack
ScropTheOSAdventurer wrote:@ians: Nope. Although I have used Visual Studio, I just never really dealt with .mak files much, and although I would see them occasionally, I never gave any thought as to what program used them.
That pretty much scuppers all of your objections. You are complaining that there isn't a recent make for Windows (there is) and then you say you don't use make on Windows. So what does it matter to you how new the Window make command is?

The Windows tools may not suit your way of working; that doesn't mean that they are not very capable tools.

Re: Locating GRUB Binaries for Windows

Posted: Wed May 28, 2014 2:19 am
by ScropTheOSAdventurer
I meant I never used them in terms of Win32 Projects, where I click Build Project and it builds.... You are taking my comment out of context. And I meant there isn't a recent GNU make available (which there isn't, with MinGW's being from September 2012). Also, cmake makes makefiles for OTHER programs (like GNU make) to use, so cmake doesn't actually qualify as a drop-in replacement :l. In addition, I never said Windows itself was fundamentally bad, I was just saying that making the GNU tools work on Windows was a pain, and since I use GNU tools, I decided Linux would be easier. I LOVE making Win32 apps on Windows; Microsoft makes it a breeze (with Visual Studio Professional anyway). Also, sorry about the GCC thing, my search didn't find anything newer somehow than 4.6.2. Also, FYI, MinGW's gcc IS on par with many distros; my lubuntu distro that I had on my now blown-out flash drive used 4.8. Also, with OSDeving, I use make all the time, as I have a makefile that generates an iso for me. So yes, it does matter how new the make binary is.

Re: Locating GRUB Binaries for Windows

Posted: Wed May 28, 2014 11:33 am
by bwat
ScropTheOSAdventurer wrote:And I meant there isn't a recent GNU make available (which there isn't, with MinGW's being from September 2012).
Got you beat:

Code: Select all

bwat@eeepc:~$ make --version
GNU Make 3.81
Copyright (C) 2006  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

This program built for i486-pc-linux-gnu
bwat@eeepc:~$ 
Now, how come I can develop operating systems with such an old dinosaur? You're looking for excuses. You know what they say: a bad workman always blames his tools.

[Edit: just couldn't let it be!] Whilst I'm at it, all this "can't develop on anything other than *nix" really is a problem with you and not with non-*nix platforms. The best book ever written on OS design that I've read (and I've read a few) develops a multitasking system that boots from MSDOS and compiles with Microsoft C or Turbo C.

Re: Developing on Windows

Posted: Wed May 28, 2014 11:50 am
by ScropTheOSAdventurer
I need to clarify some things. First, I am not making excuses on my tools. I am merely stating that I have a preference for the latest tools. Plus, I never said I couldn't develop on Windows. I, again, merely stated that I prefer UNIX based tools over other alternatives. No offense, but you are extrapolating my comments about GNU tools and imposing them over the whole Windows development environment. So, Windows isn't a bad place to develop, I am just a person of habit that hates changing tools or using tools that are not the latest. Now, is that a problem with me? Perhaps. But that doesn't change my opinion :) .


EDIT: While I am at it, why are you implying I am a bad workman? Just because I have a particular preference for a certain set of tools doesn't mean I am bad. I may be a rookie at OS Development, but when something goes wrong, the first question I ask myself is: "What did I do wrong?", not "What did my compiler do wrong?!". Don't be presumptuous.

Re: Developing on Windows

Posted: Wed May 28, 2014 12:06 pm
by bwat
ScropTheOSAdventurer wrote:No offense, but you are extrapolating my comments about GNU tools and imposing them over the whole Windows development environment.
No I'm not. You see, you started off with this:
ScropTheOSAdventurer wrote:To be honest, I don't really see the point of OSDeving on Windows, as most of the programming tools you need were intended for Linux.
which is the problem. You don't know the history of the tools and you don't know the history of the GNU project. I'm not sure you've sat down and thought about what tools are actually necessary. Don't believe me? Try to answer these questions:

How did people write operating systems before Linux?
How did people write operating systems before the GNU project?

Again, the problem you have with development platforms is inside your head - it has nothing to do with the platforms. There are too many demonstrations of systems built using these platforms for me to accept an argument to the contrary.

Re: Developing on Windows

Posted: Wed May 28, 2014 3:14 pm
by BASICFreak
I have been developing on "pure" windows since I started my re-write in January.

Yes *NIX is a much better alternative, but I've had my two largest HDDs crash over the past 9 months and haven't had funds to replace them. (now have less than 300GB in my system :( And my lubuntu install torn to shreds...) And since I also enjoy video games I had to settle with a windows install because 1/3 of all my games CANNOT run in wine. And I'm down to a 30 GB SSD and a 250GB HDD... And I refuse to remove my game installs off the SSD. (Currently 15GB free disk space total :( )

So I now have been developing in windows, no cygwin, no MakeFile - only Batches and System Paths (with DJGPP GCC, NASM, Bochs, and VFD) . Not ideal but it does get the job done with no issues (after I avoided long commands)

BUT, even-though my dev environment is not ideal I have made more progress and learned WAY more over the last 6 months than I had in 3 Years :D

Re: Developing on Windows

Posted: Wed May 28, 2014 3:28 pm
by ScropTheOSAdventurer
@bwat: I was talking about OSDeving in Windows with GNU tools, not developing in general. Originally, what I meant by :
To be honest, I don't really see the point of OSDeving on Windows, as most of the programming tools you need were intended for Linux.


I meant GNU tools. I accidentally made my comment too broad. If you will look at the REST of the dialogue, you will see I was talking primarily about GNU tools.


Now, how did people write OSes before Linux and GNU? I guess that would depend. People had Macs back then, DOS, and all the weird commercial UNIX systems, plus BSD when it finally became a full operating system (although it was in legal dispute for a while).


Again, I HAVE acknowledged that it IS in my head (by stating that I may have a problem by just wanting to stick with GNU tools and wanting to use the latest tools). I NEVER meant to say it is impossible to build an OS in Windows, just that the GNU tools are most conveniently used in Linux. Sorry if I caused a misunderstanding when I argued.

Re: Developing on Windows

Posted: Wed May 28, 2014 3:55 pm
by Dju
I started hobby OS development for a year with a Windows environment using no UNIX tools. At the beginning, I used MSVCRT, but I ended up building my own CRT to break every external dependencies several months ago. I was using my own bootloader, but I'm actually trying GRUB to enhance multiboot compatibility.

Actually, it is very convenient to use an IDE like Visual Studio.
I am using MSVC v110 toolset (VS2012) to build my solution. Toolset v120 (VS2013) linker has some limitations for now.
When I hit the Start button, it builds, bundles the binaries in a VMDK virtual hard drive and runs VMWare Player.
The whole process takes about 2 seconds to run, which is fast I think.

To conclude, MSVC is a great compiler/linker for OSdev, quite easy to set up. And MsBuild process and event makes deployment and run very easy.
Moreover you can use MSVCRT if you want to start fast.