### 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)
EditorFileSystemDirectory *d = get_filesystem();
	HashSet<String> extensions;
	_scan_extensions_dir(d, extensions);
	
	Vector<String> extensions_added;
	Vector<String> extensions_removed;
	for (const String &E : extensions) {
		if (!GDExtensionManager::get_singleton()->is_extension_loaded(E)) {
			extensions_added.push_back(E);
		}
	}
	Vector<String> loaded_extensions = GDExtensionManager::get_singleton()->get_loaded_extensions();
	for (int i = 0; i < loaded_extensions.size(); i++) {
		if (!extensions.has(loaded_extensions[i])) {
			extensions_removed.push_back(loaded_extensions[i]);
		}
	}
	String extension_list_config_file = GDExtension::get_extension_list_config_file();
	if (extensions.size()) {
		if (extensions_added.size() || extensions_removed.size()) { 
			Ref<FileAccess> f = FileAccess::open(extension_list_config_file, FileAccess::WRITE);