To start off with, the problem, at least for 1.7.10, is pretty much just that it tries to inherit values from the vanilla profile for a particular version, and then adds on to that, but the launcher does not do this inheritance.
In order to solve this manually, at least until some sort of patch to the launcher is made which allows for this to work without a fix, the following must be done. Note that this guide assumes some technical knowledge, such as how to get to your .minecraft folder, and some terminology.
To start with, make sure that you run the vanilla version of minecraft, equal to the minecraft version of forge you are planning to install, once before installing forge, just as would be done with the normal launcher. Afterwards, get the installer for the version of forge you want1, and run it. Install the client, as normal.
Then, go to your .minecraft folder, and then into the "versions" folder. Inside, there should be a folder named roughly the same as the vanilla version you got earlier, and the name of the forge version, which should have something like "forge" somewhere in the name. Enter the vanilla one.
There should be two files, a .json file, and a .jar file, with what are otherwise the same filenames. Copy the .jar, go up a folder, go into the folder with "forge" in the name, and then paste the file. Inside this folder, there should be a .json file. Rename the jar so that everything before the final "." is the same name as the json (before its final ".")2
Thus, there is now a jar in the place thats its looking for it, and its the one its looking for. However, the part that makes this difficult is not that, but helping the launcher find the libraries it wants (otherwise, things in forge call upon java functions that don't exist without those libraries, and the game crashes). To fix this, one must modify the .json file for the forge version to include all libraries it would otherwise be inheriting from the vanilla version's .json file.
First, go back to the vanilla version folder, and open the .json file with some sort of decent text editor (wordpad might work, I use notepad++. normal notepad may mess up indentation and newlines, but it also may not, untested). Look for a line that looks like this:
Then, copy from the very start of the first line after that, all the way down to the end of the libraries, not including the line which has the square bracket ending the list of libraries. Then, go to the forge version folder again, open up the .json file in there with your text editor, and find the same line including "libraries" in this file. Find the end of the list of libraries. Go to the last item in the list, and put a "," (comma) after the end of the last item's finishing bracket (not the square bracket which ends the list). Then, create a new line (press "enter" in most test editors) and paste the lines from the other file you copied.
Finally, chances are there are one or two duplicate library entries now. This is because forge sometimes uses higher versions of libraries that vanilla minecraft uses. Go through and find the entries that are duplicates, and delete the lower version between them. If one of the deleted entries is the last one in the libraries list, make sure to remove the ending comma one the entry that was before the removed entry, since that one now ends the list, and should not have a comma there.
Make sure to save the file, and then close it. If the launcher was open, close it, and then open it (or just open it if it was closed). This makes sure that things get refreshed, since the launcher seems to read .json files for versions on startup. Then, try running minecraft on a profile with forge selected. If all went well, you should see minecraft start up, the process modified by forge. Once you reach the main menu, if you see a buttons such as "Mods", then you've got it working. If not, I'm afraid I might not be able to help, but go ahead and see if you messed up on any of the steps. The .json format can be a little picky about some formatting things, for example.
Proof that it worked for me is in the attached .png image.
1 If you don't know where to get those, go here: https://files.minecraftforge.net/
2 If you don't have viewable file extensions enabled, extensions won't be shown. A search engine of some sort, such as Google, is your friend for enabling this.