If you want to learn C++ then Microsoft Windows Developer Studio is the way to go. It has the best compilers, debugger and documentation. It is by far the best free IDE.
If you want to learn Java then IntelliJ. It is much better than Eclipse and is also free.
Being cross-platform allows me to engineer much better ideas, much quicker, than I could on a C64. Complex compression needs complex code, lots of debugging and lots of memory.
Krill's loader has couple of dependencies, but he listed them all together with links to where download it from. Here's a quick guide of compiling this loader.
1. Download the source code, extract it somewhere.
2. Go to Loader / Docs / Prerequisites.txt
This file lists all the programs you need and the environment paths you need to set. To check if you have the required program already just type it's name into the terminal. If you see "command not found" then you have to install it:
2.a first try sudo apt-get install NAME_OF_PROGRAM. It will download compiled program and install it for you if it's in the repository (for standard stuff like c compiler, make etc.)
If the command above fails, go to the link in the Prerequisites.txt for a given program (for example exomizer http://hem.bredband.net/magli143/exo/, download source from there and compile it (recursive :P )
General stuff on compiling.
If you see a file called Makefile then all you have to do is to type make in the terminal and the compilation will begin. Read the error messages (if any). You might get simple
exomizer : no command found meaning you don't have exo installed...
Installing compiled programs:
most makefiles will have a rule for "install", so you just type sudo make install. If it says no rule for install, then you have to copy the compiled file yourself to some path you can access from terminal. Instead of making your PATH longer and longer with every program, you can copy your compiled program to some standard path like ~/.local/bin
Setting environment variables:
easy thing. The command is called export. For example
if you want to add something to already set variable (for example PATH) you do this:
export PATH = "$PATH:/another/path:/maybe/yet/another/one"
setting environment variables this way will be only remembered in the terminal window you typed it. If you want to set these for good then you have to save them to a file that is run every time you open a new terminal window. It's called .bashrc and it's in your home folder (files starting with dot are hidden, so you need to enable show hidden files in your file browser, in terminal it doesn't matter, just nano/vim/ed/whatever_turns_you_on ~/.bashrc
Eh, I remember having issues with that when I was a linux n00b.
Like, editing it in my .login instead of my .cshrc and wondering why it didn't take effect even in new shells, fucking up the syntax, accidentally overwriting instead of prepending, appending instead of prepending and wondering why my addition was getting shadowed.
TBH I probably fucked it up in DOS a few times too back in the day.
Krill's loader has couple of dependencies [...]
Complex compression needs complex code, lots of debugging and lots of memory.