Die wx.h Header-Datei ist zwar sehr bequem, allerdings wird auch wirklich sehr viel includiert was nicht wirklich gebraucht wird, und da muß sich der Compiler erstmal durchhangeln.
Die Fehlermeldungen wurden dadurch zwar verhindert, allerdings ist -include in einem Makefile auch eigentlich für das Einbinden von anderen Makefiles gedacht, nicht für "Header"-Dateien: 3.3 Including Other Makefiles ... auf Wx-Config steht auch nicht, dass wx.h immer extra includiert werden muss ... und bis CIFE Version 0.07 war es ja auch nicht notwendig ... 
Wo auch immer die Macros T1 und P1 außerhalb von CIFE definiert wurden: es compiliert jetzt ohne Fehler ... 
Verwendet man clang++ als C++-Compiler ist allerdings noch ein kleiner Patch notwendig:
diff --git a/CIFE/Sources/CpmFs.cpp b/CIFE/Sources/CpmFs.cpp
index 842d846..9906537 100644
--- a/CIFE/Sources/CpmFs.cpp
+++ b/CIFE/Sources/CpmFs.cpp
@@ -998,7 +998,7 @@ int CpmFs::amsReadSuper(const char *format) {
cpmdevice->SetGeometry(512, 9, 40, 0);
if (cpmdevice->ReadSector(0, 0, (char *) boot_sector)) {
- fserr = msgFormat("Failed to read Amstrad superblock (%s)", cpmdevice->getErrorMsg());
+ fserr = msgFormat("Failed to read Amstrad superblock (%s)", cpmdevice->getErrorMsg().c_str());
return (1);
}
Display More
... sonst kommt es zu dieser Fehlermeldung:
CIFE/Sources/CpmFs.cpp:1001:70: error: cannot pass object of non-trivial type 'std::string' (aka 'basic_string<char>') through variadic method; call will abort at runtime [-Wnon-pod-varargs]
fserr = msgFormat("Failed to read Amstrad superblock (%s)", cpmdevice->getErrorMsg());
^