About names
All names seem to have meaning. Likely people won't commit to them unless they do. After some centuries they keep committing out of tradition even though the meaning of the name may have become archaic or even lost in history.
This means you can invent whatever name you want and claim its meaning is "lost". However, I think applying a system is more fun, more logical, and may even give you a bit of a free ride when parts combine to new wholes (so read on!)
Some examples of real-world names:
- England - Derived from a people called the Angles (from Germany/Denmark)
- France — the realm of the Franks, makes more sense in german(ic) language(s); Frankreich (reich=realm)
- Which brings us to Germany, a name the Romans used for the land of the germanic tribes (Germania). Deutschland however is more about the "land of the people" than germanic tribes per se.
- And to not be completely eurocentric, China probably named after the Qin dynasty (or "Ch'in").
So if you were to use English you'd create a people (ancient?), transform and bastardize their name some, and give them a land (or look into the etymology of other counties to get other ideas). To make it more interesting you could use other words than land; mark, realm, etc.
You ask about making up names, and for that, you could either invent a people (Ch'in) or use a conlang.
Conlanging
As shown above, to create a name for one nation, one needs a few words in a conlang: One for "land", one for the name of a people. Or an expression that can be compacted into a word for "the land of the people", or maybe even "the people's" or "the land". Or just a name of a people.
Or, one can go the complex route and create many names using several conlangs...
I created conlangs for names of countries, cities, and for given-names and surnames. (Actually, I created programs to create words for them randomly, with varying success, but going that far takes us into conlanging instead of name creation, see here for a simple example).
At first, I just threw randomly created words at country names, place names, as well as people names.
Then came my realization about meaning, and I started researching it and found that most names seem to follow a system. Here are some examples from Sweden (where I'm from):
- Stockholm - logs (stock) and island or islet (holme)
- Gothenburg (Göteborg) — fortification (borg) by the Göta River
- Malmö – from "Malmöghae" piles of sand or gravel (and surprisingly not, as one might think from ore [malm] and island [ö]... — goes to show you a realistic etymology of names can be messy...)
See here for a more general disussion. The United Kingdom is an interesting example where names are built by elements from many different languages (a dozen or so on the linked page). You can easily see a system of types of words used in place names.
Once I realized I wanted names with meanings, I started assigning conlang versions to the examples from the UK system (and the Swedish system—the link is in Swedish though, and the English Wikipedia article is not compatible... Google Translate might help, but it may also mess things up, but then again, this is conlanging... regardless, the big difference is in some details and the larger number of languages used in the English version.)
So I assigned a conlang word for "large church, monastery" and another for "West" and I could create my conlang version of "Westminster" or why not "Northminster"? (Extra interesting if you don't have churches or monasteries but maybe sacrificial groves or rain dance rocks, etc)
People's names are a bit trickier, and here I've used random words for given names and systems similar to the above for last names (occupations, features of nature, etc, this Wikipedia article covers lots of different ways to create surnames).
Meaning
My experience is that names chafe when they don't have meaning.
Inventing fantasy words in conlangs can result in really cool names, but as a writer/world builder it can feel a bit unfinished to not know what the name really means. If you apply the systems our human brains have invented to add meaning, it can become even cooler.
Not to mention how handy it'd be if you get cornered about the meaning of your names...