### Godot version

4.0 beta (e1648b3327431a09cc9498663fac483275eb711d)

### System information

Mageia 9, Linux

### Issue description

When exporting a project with no attached script (or with only a builtin GDScript), the following error is printed:
```
ERROR: Can't open file from path 'res://.godot/global_script_class_cache.cfg'.
   at: get_file_as_bytes (core/io/file_access.cpp:699)
```

And while the export succeeds, when running the project, it prints:
```
ERROR: Couldn't find the given section "" and key "list", and no default was given.
   at: get_value (core/io/config_file.cpp:86)
```

We should ensure that this file is always created, regardless of whether there are scripts to parse for class names or not. It should always contain at least `list=[]`.

### Steps to reproduce

- Create new project
- Create main scene with no script
- Export

### Minimal reproduction project

[NewProj.zip](https://github.com/godotengine/godot/files/10547125/NewProj.zip)
files.sort_custom<NaturalNoCaseComparator>();
	int total = dirs.size() + files.size();
	int idx = 0;
	for (List<String>::Element *E = dirs.front(); E; E = E->next(), idx++) {
		if (da->change_dir(E->get()) == OK) {
			String d = da->get_current_dir();
			if (d == cd || !d.begins_with(cd)) {
				da->change_dir(cd); 
			} else {
				EditorFileSystemDirectory *efd = memnew(EditorFileSystemDirectory);
				efd->parent = p_dir;
				efd->name = E->get();
				_scan_new_dir(efd, da, p_progress.get_sub(idx, total));
				int idx2 = 0;
				for (int i = 0; i < p_dir->subdirs.size(); i++) {
					if (efd->name.naturalnocasecmp_to(p_dir->subdirs[i]->name) < 0) {
						break;
					}
					idx2++;
				}
				if (idx2 == p_dir->subdirs.size()) {
					p_dir->subdirs.push_back(efd);
				} else {
					p_dir->subdirs.insert(idx2, efd);
				}
				da->change_dir("..");
			}
		} else {
			ERR_PRINT("Cannot go into subdir '" + E->get() + "'.");
		}