# BinaryConverter Native fuer Linux Diese Variante ist eine native C++17-Implementierung fuer Linux, getestet fuer Arch Linux. Sie ist formatkompatibel zur vorhandenen C#/.NET-Framework-Version: Encode-Dateien koennen zwischen Windows und Linux gegenseitig verarbeitet werden. ## Voraussetzungen Arch Linux: ```bash sudo pacman -S --needed base-devel openssl pkgconf ``` ## Build ```bash cd native make ``` Die Binary liegt danach hier: ```text native/build/binaryconverter ``` Optional generischere Binary ohne CPU-spezifische Optimierung: ```bash make clean make CXXFLAGS="-O3 -DNDEBUG" ``` ## Nutzung Encode: ```bash ./build/binaryconverter -Encode input.bin -Output transfer.txt ``` Decode: ```bash ./build/binaryconverter -Decode transfer.txt output.bin ``` Mit Logfile: ```bash ./build/binaryconverter -Encode input.bin -Output transfer.txt -Log binaryconverter.log ``` Vorhandene Ausgabedatei ueberschreiben: ```bash ./build/binaryconverter -Decode transfer.txt output.bin -Force ``` ## Verhalten - Streaming-Verarbeitung ohne komplette Dateien in den RAM zu laden - Base64-Zeilen mit 76 Zeichen - temporaere Ausgabedatei im Zielverzeichnis und atomarer Rename nach Erfolg - Decode prueft `SourceLength` und `SHA256`, wenn die Metadaten vorhanden sind - Exitcodes wie die C#-Version: `0` Erfolg, `1` Laufzeit-/Datenfehler, `2` Argumentfehler