gzip // #define probleme
-
Hallo,
hat schon mal jemand probiert eine gzip-dll zu verwenden?
Ich habe nämlich ein kleines Problem mit der www.gzip.org/zlib - hat die jemand schon benutzt?
Mein Problem ist folgendes:1. sagt die Doku, dass ich es mit der option -a compilen muss (die schreiben 4-byte alignment) - wenn ich das aber richtig sehe, dann wäre -a4 4-byte alignment, bzw. options->Advanced Compiler->Data alignment->Double Word
stimmt ihr mir da zu?
beschwert sich der compiler bei folgendem:
typedef unsigned char Byte; ... #ifdef SMALL MEDIUM /* Borland C/C++ and some old MSC versions ignore FAR inside typdef */ # define Bytef Byte FAR #else typedef Byte Bytef FAR #endif- da sagt er: Zeile typedef Byte Bytef FAR
Ambiguity between "Byte" and "System::Byte"Hat da einer ne Idee?
ich hab mal probehalber gesagt:
typedef unsigned char Byteg; #ifdef SMALL MEDIUM /* Borland C/C++ and some old MSC versions ignore FAR inside typdef */ # define Bytef Byteg FAR #else typedef Byteg Bytef FAR #endif-- dann compiliert er zwar, aber die routine inflate(..) meldet immer noch: data_error:(
könnt Ihr mir ein paar Tipps geben?
Danke!
-
Das liegt an der Include-Reihenfolge. zeig mal den Code wo du die Includes reingeschrieben hast...
-junix
-
#include <Classes.hpp> #include <Controls.hpp> #include <StdCtrls.hpp> #include <Forms.hpp> #include <Buttons.hpp> #include "startbar.h" #include <stdio> #include <assert.h> #include <zconf.h> #include <zlib.h>
-
Schieb mal Z-dingsda jeweils ganz nach oben. (so interessehalber)
-
hallo,
danke, aber das ändert leider gar nichts:)
ich habe aber mittlerweile noch ein paar sachen ausprobiert und bin auf folgende interessante tatsachge gestoßen:
wenn ich etwas mit "meinem" gzip programm komprimiere, dann kommt eine .gz heraus, die für winrar ungültig, für "mein" programm jedoch lesbar ist.
und genauso umgekehrt (eine "normale; korrekt" komprimierte .gz ist für mein programm ungültig, aber alle anderen programme können es problemlos übersetzen
ich *glaube* es hat was mit dem alignment zu tun - auf jeden fall hat es bestimmt was mit dem cbuilder und irgendner einstellung zu tun, die nicht "c-like" ist (klar - ist ja c++ - aber da muss es irgendwas geben, was bspw. ein byte so bestimmt, dass der gzip algorithmus der zlib nicht funktioniert)...
hast du ne vorstellung, was das sein könnte?