Setting Up C++ Programming Environment in Windows 10 Is a Pain

Yesterday I was excited and ready to start getting to programming with C++. I thought that it would be nice to learn and to refresh my memory. I have some years ago completed a programming basics course in C++. The idea of having an executable that could be run on a wide range of devices was the idea that was so fascinating to me. I use Windows 10 a lot. So I decided that it would be easiest to just install some IDE and also a compiler.

I was so wrong with my decision. I tried to install Cygwin. During the installation you would have to select all the components that you definitely need for C++ development. There are hundreds of them. If you would like to install all of them that would take days to download and install. So that basically wasn’t an option.

I have been around Java from 2010. I am very familiar with setting up programming environment for it. It is just way easier than with C++. I wanted to code in C++. I just think there are so many options if you learn and use this programming language. What was my solution?

While I was going through the material I found online I figured that it might be easier if I would start with Linux instead of keep hitting my forehead to Windows 10. I know that Microsoft has been trying to make it a bit easier to use Linux’s software on Windows. That however wasn’t the solution for me. So I swithched to my laptop that has a dualboot install of Windows 10 and Ubuntu.

I had already Visual Studio Code installed. All I had to do was to install the extension inside VS Code. That was almost it. I had to look up how to run build inside the IDE but that wasn’t a hard thing to do. So I got to programming quickly.

It was my goal to just write something that would work and refresh my memory on the programming language. As I got my programming environment to work I got to the actual programming. I had to look up some tips on how to present text and read it in online. I am serious as I say that any programming experience in any language makes it way easier to switch to a language that you aren’t already familiar.

C++ is used widely and still in 2022 for programming games and other software. Aside it being a tough to install in Windows it really is a dynamic programming language. There basically aren’t many limitations in what it can be used for. Even websites and desktop applications with a GUI can be build.

What I build yesterday was just a tiny application. Actually it is a personality test with a lot of humourous edges on it. You answer in five questions which give you points for a type of a person you are. There are three types. The personality type that you are is the one that gets most points based on your answers. Yes. And the types are (translated since the application is in Finnish) “a talented model citizen”, “an alcoholic” and “loser”. So you are one of these. I know, there aren’t much of a choice.

Anyways, I had fun all of the about three hours I spend developing this funny or stupid app.  I had fun. It was nice. The program managed to fit into about 150 lines of code. So you can imagine that it wasn’t so complex. It had some basic text that was read in and also printed out. It used different variable types, some loops and decision making with if-else structures and that was basically it.

If you would like to program with C++ yourself I highly recommend using a computer that has Linux installed. I also like Visual Studio Code which is a free text editor or even an IDE (which stands for Integrated Development Environment).

Different Platforms For Releasing Games

You might have thought about releasing your own game or you might just be curious about what platforms can be used for playing games. This is interesting for me as a programmer so in this blog post I am going to open up a bit these different ways you can today play and even design games.

I have been making websites as a hobby for very long time. I started back in the 90s. To be precise it was the end of 90s. Back then we didn’t have any mobile devices at all. Bluetooth wasn’t where it is today. I think there even wasn’t this thing we call USB standard. So if you had a PC you had to plug in your gaming pad some other way. I don’t recall what that way was. Basically if you wanted to play with game controller you would be preferring PlayStation over PC.

But what I was saying is that one platform that you can make games on is the web browser. You can develop your game with only HTML, CSS and JavaScript. If you make a game this way it is very easy to release it. You just have to upload your game to a web host. There are places on internet that actually sell these games also. So this is one way to make a game.

You might want to go mobile. This means you have to learn Java and after you have mastered it you must learn software development in Android (or iOS and ´the programming language that is used with it). I have tried my hand at Android development. I found it to be very hard. So I gave up on this idea. But this isn’t what you should do. If you have an interest there’s nothing that can stop you from downloading the appropriate IDE (Integrated Development Environment) and start working on it.

One way to release a game is on some gaming console. This is a bit harder since manufacturers of gaming consoles tend to have a sense of control over what kinds of games are being released on their systems. Sometimes you even need a specific development kit for the desired console. So this is a hard way for an independent software developer. It can also cost a lot of money. This way includes also handheld consoles like Nintendo Switch Lite. You might notice that Nintendo is going in it’s own direction as it doesn’t really care so much about mobile gaming.

You can also release a game for an old gaming console. You probably don’t have an appropriate development kit but I can assure you that there are lots of software tools for accomplishing this. So you actually can make a game that is playable through emulator. You can use emulators to play old games on a wide variety of devices that include smart phones, computers like Raspberry Pi and personal computers. There are emulators for playing games of for example Commodore 64, NES, SNES, Master System, Mega Drive, MS-DOS, PlayStation 1 & 2, Dreamcast, GameCube, Wii and many others.

There are also many operating systems that games for PC can be released on. There is Windows, right now it is Windows 10, and many versions of Linux (like Ubuntu). There are also Linux distributions that are dedicated to retro and emulator gaming. I can name some of them. There is Lakka OS, RetroPie and Recalbox just to name some of them.

If you don’t want to release your game for free there are many online software stores that can be used to sell your game. There is Steam and GOG which are big names that have numerous amounts of games available. There are also lots of other options that you can find using your favorite search engine.

I didn’t go to what tools you can use for developing your own game. This might be a good time to have a break. I will come back with another post for you very soon. It would be a good idea to present for you some tools that can be used for developing a game for Android, Windows, Linux or for web browsers. This would be interesting wouldn’t it?

Social media & sharing icons powered by UltimatelySocial