Zconf h как подключить
Перейти к содержимому

Zconf h как подключить

  • автор:

библиотека Zlib

Помогите разобраться, скачал бибилиотеку zlib123.zip.

Написал програмку test.cpp:

#include
#include

#include «zlib/include/zlib.h»
#include «zlib/include/zconf.h»

void main ( void ) <
char * data = «Text for compression. abc/abc» ;

Byte * Compr , * UnCompr ;
unsigned long ComprLen , UncomprLen ;

Compr = ( Byte * ) malloc ( ComprLen ) ;
UnCompr = ( Byte * ) malloc ( UncomprLen ) ;

strcpy ( UnCompr , data ) ;
UncomprLen = sizeof ( UnCompr ) ;

printf ( » \t %d \r \n » , rc ) ;
> ;

Получаю ошибку линкера:
[Linker Error] Unresolved external ‘_compress’ referenced from TEST.OBJ

Как с этим бороться?

2 ответа

09 мая 2006 года
5.6K / / 13.08.2003

Originally posted by SN_ok
Помогите разобраться, скачал бибилиотеку zlib123.zip.

Написал програмку test.cpp:

#include
#include

#include «zlib/include/zlib.h»
#include «zlib/include/zconf.h»

void main ( void ) <
char * data = «Text for compression. abc/abc» ;

Byte * Compr , * UnCompr ;
unsigned long ComprLen , UncomprLen ;

Compr = ( Byte * ) malloc ( ComprLen ) ;
UnCompr = ( Byte * ) malloc ( UncomprLen ) ;

strcpy ( UnCompr , data ) ;
UncomprLen = sizeof ( UnCompr ) ;

printf ( » \t %d \r \n » , rc ) ;
> ;

Получаю ошибку линкера:
[Linker Error] Unresolved external ‘_compress’ referenced from TEST.OBJ

Как с этим бороться?

подключить библиотеку zlib (не знаю как там в винде — zlib.dll, zlib.lib, что то такое)

Zconf h как подключить

Пользователь

Регистрация: 16.02.2019

Сообщений: 14

как установить библиотеку zconf.h

В консоли при компиляции пишет fatal error: zconf.h: Нет такого файла или каталога

Изображения

Снимок экрана от 2019-03-03 22-49-17.png (22.7 Кб, 77 просмотров)

Регистрация: 15.02.2010

Сообщений: 15,709

Библиотека называется zlib, пакет с заголовками чсто называют zlib-devel

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как установить библиотеку glut на windows 7 ? datileo Visual C++ 5 10.11.2016 20:55
Как установить библиотеку ? MonkMoldova Общие вопросы C/C++ 7 04.04.2013 07:37
Установить библиотеку Колючка* Компоненты Delphi 12 12.02.2010 16:11
Как установить библиотеку GMP для PHP? motorway PHP 3 21.10.2009 16:58

Zconf h как подключить

// декомпрессировать второй функцией, помоемому все просто, там кстати подробная документация по функциям

Добавлено 06.09.05, 12:44
. да подключить нужно файл lib к проекту

Добавлено 06.09.05, 12:47
забыл
int Compress(LPVOID dest, ULONG *destLen, LPCVOID src, ULONG lenSrc, int level)

level — это «сила» сжатия от 0 до 9 — 9 самое максимальное сжатие, если ничего не путаю

Сообщ. #5 , 06.09.05, 13:02
Рейтинг (т): 1

да, это все ясно, а вот как работа с файлами. Я так понял это простейший пример сжатия например одного файла читаем содержимое и сжимаем, потом наоборот! Это все только с одним файлов, а как например делать архив и так далее.
и ище одно мне не понятно как подключать .lib к проекту в 8 студии??

Сообщ. #6 , 06.09.05, 15:33
Senior Member
Рейтинг (т): 9

Это все только с одним файлов, а как например делать архив и так далее.
и ище одно мне не понятно как подключать .lib к проекту в 8 студии??

Про 8 студию ничем помочь не могу, не видел. Про несколько файлов, нужно порыться в документации по ZLIB сам не делал, а если таких функций нет то можно написать самостоятельно, если конечно тебе не нужна совместимость со стандартными архиваторами.

Сообщ. #7 , 07.09.05, 05:08
Рейтинг (т): 8

скачал я lib, dll, zlib.h, вобщем все что требуется, но при линковке мне компилятор сказал: unresolved external symbol _compress2, тоже саме про uncompress
пришлось грузить функции через GetProcAddress(), теперь функции вызывались, но появился тругой трабл, compress2() всегда возвращала Z_OK, а вот uncompress() и Z_OK и Z_DATA_ERROR, хотя ниразу не вышло распаковать, пробовал распаковывать данных сжатые уровнем от 1 от 9
мб не так чо делал?

Сообщ. #8 , 07.09.05, 07:08
Unregistered
FedY@, будем пеарить %)
разархивирование RAR
Сообщ. #9 , 07.09.05, 08:35
Senior Member
Рейтинг (т): 15

скачал я lib, dll, zlib.h, вобщем все что требуется, но при линковке мне компилятор сказал: unresolved external symbol _compress2, тоже саме про uncompress

tark, как-то ты не так подключил дллки.

Можно так:
1. zdll.lib поместить в . \Microsoft Visual Studio .NET 7.0\Vc7\PlatformSDK\lib
2. zlib.dll — в SYSTEM32
3. в проекте #include «zlib.h» и #include «zconf.h»; и в настройках проекта подключить zdll.lib или #pragma comment(lib,»zdll»)

Сообщ. #10 , 07.09.05, 10:05
Рейтинг (т): 1

stontaro, это все отлично но есть ли у тебя АРХИВИРОВАНИЕ??
Кстате мне бы желательно чтобы стандартные Архиваторы понимали архивирование моей програмой.

Добавлено 07.09.05, 10:11
и ище, эта DLL не работает с архивами ZIP:(

Сообщ. #11 , 07.09.05, 10:42
Unregistered

FedY@, есть классик для архивирования\разархивирования zip (написанный на основе zlib). если надо могу поискать.

Сообщ. #12 , 07.09.05, 12:16
Рейтинг (т): 1
всем огромное спасибо, я помоему нашел то что искал XZip примеры и так далее. с примерами!!
Сообщ. #13 , 07.09.05, 12:54
Рейтинг (т): 114
Цитата FedY@ @ 06.09.05, 13:02

Это что за студия?
Сообщ. #14 , 07.09.05, 14:42
Рейтинг (т): 172
Цитата IEZ @ 07.09.05, 12:54
Это что за студия?
Сообщ. #15 , 07.09.05, 16:32
Рейтинг (т): 8

sham6215, как подключать lib’ы я знаю, мб просто не ту подключал
а подключал я по-очереди zlibwapi.lib, zlibstat.lib и использовал zlibwapi.dll, скачаную с http://www.gzip.org/zlib/
меня интересует почему при декомпресии происходят ошибки при всех уровнях сжатия
только не надо высказывать мысли мол у меня буфер маловат был выделен, специально делал раз в 10 больше, чем исходный

Сообщение отредактировано: tark — 07.09.05, 16:34
Сообщ. #16 , 09.09.05, 03:57
Рейтинг (т): 8
и как всегда ответа нет это специально чтоли меня игнорируют? на все вопросы мои
Сообщ. #17 , 09.09.05, 05:12

Рейтинг (т): 120
Цитата tark @ 09.09.05, 03:57
и как всегда ответа нет это специально чтоли меня игнорируют? на все вопросы мои

Что значит «как всегда?» Значит, никто не пользовался библиотечкой. Или всё получилось с первого раза. Видимо, придётся тебе САМОМУ взять в руки дебаггер, поотлаживать. Никто ведь не знает, может у тебя оперативной памяти 16 мегабайт
Нужно быть объективным — библиотечка не слишком популярна, и найти второго такого, прошедшего по этим граблям очень сложно. Так уж получилось, извини.

Сообщ. #18 , 25.09.05, 09:02
Unregistered
Кто нибуть знает как буфер сжатый не зная его размера разархивировать?
Сообщ. #19 , 28.09.05, 09:39
Senior Member
Рейтинг (т): 15
и как всегда ответа нет это специально чтоли меня игнорируют? на все вопросы мои

Где-то я стышал про женскую солидарность, она бывает не только у женщин . Лови рабочий код.
#pragma comment(lib,»zdll»)
#include «zlib.h»
#include «zconf.h»
typedef unsigned short uint16;
typedef unsigned char BYTE;
char data[]=»bla-bla-bla»;
uLongf togo=strlen(data);
uLongf newsize = togo+300;
BYTE *output=new BYTE[togo+300];
uint16 result = compress2((BYTE*)output,&newsize,(BYTE*)data,togo,9);
cout<<"new size is: "<tark, имхо, с помощью zlib никак. И вообще, ты передаёшь указатель байтов, как можно узнать, сколько в нём инфы?? Никак. Нужно длину передать.

0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
0 пользователей:

  • Предыдущая тема
  • C/C++: Прочее
  • Следующая тема

zlib.h:34:19: fatal error: zconf.h: No such file or directory #include «zconf.h»

There are quite some posts about this error, but I was not able to solve it, I hope you can come up with the solution. I am on a Ubuntu machine.

In this folder, I downloaded zlib. You can see the picture image After some Googling, I also noticed that there is no -lz parameter, so I also added that manually as you can see below image However, I still get the same error as when none of the above were done. Might it be that the path to zlib is not clear for the compiler? However, I installed it in this same folder. The make file looks like the below:

BIN = ./bin/graphmap2 BIN_DEBUG = ./bin/graphmap-debug BIN_LINUX = ./bin/Linux-x64/graphmap2 BIN_MAC = ./bin/Mac/graphmap OBJ_TESTING = ./obj_test OBJ_TESTING_EXT = ./obj_testext OBJ_DEBUG = ./obj_debug OBJ_LINUX = ./obj_linux OBJ_EXTCIGAR = ./obj_extcigar OBJ_MAC = ./obj_mac SOURCE = src CODEBASE = codebase # This finds all 'src' folders at maximum depth 2 (level one inside each submodule's folder). CODEBASE_SRC_FOLDERS = $(shell find $(CODEBASE) -maxdepth 2 -type d -name "src" -exec echo "-I"<> \;) # $(shell find $(CODEBASE) -maxdepth 3 -type d -name "libs" -exec echo "-I"<> \;) # $(shell find $(CODEBASE) -maxdepth 2 -type d -name "src" -exec echo "-I"<>"/*/" \;) # ? allows override by user using env var GCC ?= g++ # define variables for GCC version check here GCC_MAJOR_VERSION_GE_4 := $(shell expr `$(GCC) -dumpversion | cut -f1 -d.` \>= 4) GCC_MINOR_VERSION_GE_7 := $(shell expr `$(GCC) -dumpversion | cut -f2 -d.` \>= 7) GCC_MAC ?= g++ # CPP_FILES := $(wildcard $(SOURCE)/*/*.cpp) $(wildcard $(SOURCE)/*.cpp) $(wildcard $(SOURCE)/libs/*/*.cpp) # CC_FILES := $(wildcard $(SOURCE)/*/*.cc) $(wildcard $(SOURCE)/*.cc) $(wildcard $(SOURCE)/libs/*/*.cc) # H_FILES := $(wildcard $(SOURCE)/*/*.h) $(wildcard $(SOURCE)/*.h) $(wildcard $(SOURCE)/libs/*/*.h) CPP_FILES := $(wildcard $(CODEBASE)/*/src/*.cpp) $(wildcard $(CODEBASE)/*/src/libs/*/*.cpp) $(wildcard $(CODEBASE)/*/src/*/*.cpp) $(wildcard $(SOURCE)/*/*.cpp) $(wildcard $(SOURCE)/*.cpp) $(wildcard $(SOURCE)/libs/*/*.cpp) CC_FILES := $(wildcard $(CODEBASE)/*/src/*.cc) $(wildcard $(CODEBASE)/*/src/libs/*/*.cc) $(wildcard $(CODEBASE)/*/src/*/*.cc) $(wildcard $(SOURCE)/*/*.cc) $(wildcard $(SOURCE)/*.cc) $(wildcard $(SOURCE)/libs/*/*.cc) H_FILES := $(wildcard $(CODEBASE)/*/src/*.h) $(wildcard $(CODEBASE)/*/src/libs/*/*.h) $(wildcard $(CODEBASE)/*/src/*/*.h) $(wildcard $(SOURCE)/*/*.h) $(wildcard $(SOURCE)/*.h) $(wildcard $(CODEBASE)/*/src/*.hpp) $(wildcard $(CODEBASE)/*$ OBJ_FILES := $(CPP_FILES:.cpp=.o) $(CC_FILES:.cc=.o) OBJ_FILES_FOLDER_TESTING := $(addprefix $(OBJ_TESTING)/,$(OBJ_FILES)) OBJ_FILES_FOLDER_TESTING_EXT := $(addprefix $(OBJ_TESTING_EXT)/,$(OBJ_FILES)) OBJ_FILES_FOLDER_DEBUG := $(addprefix $(OBJ_DEBUG)/,$(OBJ_FILES)) OBJ_FILES_FOLDER_LINUX := $(addprefix $(OBJ_LINUX)/,$(OBJ_FILES)) OBJ_FILES_FOLDER_EXTCIGAR := $(addprefix $(OBJ_EXTCIGAR)/,$(OBJ_FILES)) OBJ_FILES_FOLDER_MAC := $(addprefix $(OBJ_MAC)/,$(OBJ_FILES)) LIB_DIRS = -L"/usr/local/lib" CC_LIBS = -static-libgcc -static-libstdc++ -D__cplusplus=201103L # INCLUDE = -I"./src/" -I"/usr/include/" -I"libs/libdivsufsort-2.0.1/build/include" -I"libs/seqan-library-1.4.2/include" # INCLUDE = -I"./src/" -I"/usr/include/" -I"src/libs/seqan-library-1.4.2/include" INCLUDE = -I"./src/" -I"/usr/include/" -I"$(CODEBASE)/seqlib/src/libs/seqan-library-2.0.1/include" -I"$(CODEBASE)/seqlib/src/libs/libdivsufsort-2.0.1-64bit/" $(CODEBASE_SRC_FOLDERS) CC_FLAGS_DEBUG = -O3 -g -rdynamic -c -fmessage-length=0 -ffreestanding -fopenmp -m64 -std=c++11 -Werror=return-type -pthread -march=native -lz CC_FLAGS_RELEASE = -DRELEASE_VERSION -g -O3 -fdata-sections -ffunction-sections -c -fmessage-length=0 -ffreestanding -fopenmp -m64 -std=c++11 -Werror=return-type -pthread -lz # -march=native CC_FLAGS_EXTCIGAR = -DRELEASE_VERSION -DUSE_EXTENDED_CIGAR_FORMAT -g -O3 -fdata-sections -ffunction-sections -c -fmessage-length=0 -ffreestanding -fopenmp -m64 -std=c++11 -Werror=return-type -pthread -march=native -lz CC_FLAGS_NOT_RELEASE = -g -O3 -fdata-sections -ffunction-sections -c -fmessage-length=0 -ffreestanding -fopenmp -m64 -std=c++11 -Werror=return-type -Wuninitialized -pthread -march=native -lz CC_FLAGS_NOT_RELEASE_EXT = -g -O3 -DUSE_EXTENDED_CIGAR_FORMAT -fdata-sections -ffunction-sections -c -fmessage-length=0 -ffreestanding -fopenmp -m64 -std=c++11 -Werror=return-type -Wuninitialized -pthread -march=native -lz LD_FLAGS = -static-libgcc -static-libstdc++ -m64 -ffreestanding -lz # LD_LIBS = -lpthread -lgomp -lm -lz -ldivsufsort64 LD_LIBS = -lpthread -lgomp -lm -lz all: gcc_version_check linux install: /usr/bin/graphmap /usr/bin/graphmap: bin/Linux-x64/graphmap cp bin/Linux-x64/graphmap /usr/bin/graphmap modules: git submodule update --init --recursive # git submodule foreach git pull origin master testing: $(OBJ_FILES_FOLDER_TESTING) mkdir -p $(dir $(BIN)) $(GCC) $(LD_FLAGS) $(LIB_DIRS) -o $(BIN) $(OBJ_FILES_FOLDER_TESTING) $(LD_LIBS) obj_test/%.o: %.cc $(H_FILES) mkdir -p $(dir $@) $(GCC) $(CC_LIBS) $(INCLUDE) $(CC_FLAGS_NOT_RELEASE) -o $@ $< obj_test/%.o: %.cpp $(H_FILES) mkdir -p $(dir $@) $(GCC) $(CC_LIBS) $(INCLUDE) $(CC_FLAGS_NOT_RELEASE) -o $@ $< testingext: $(OBJ_FILES_FOLDER_TESTING_EXT) mkdir -p $(dir $(BIN)) $(GCC) $(LD_FLAGS) $(LIB_DIRS) -o $(BIN) $(OBJ_FILES_FOLDER_TESTING_EXT) $(LD_LIBS) obj_testext/%.o: %.cc $(H_FILES) mkdir -p $(dir $@) $(GCC) $(CC_LIBS) $(INCLUDE) $(CC_FLAGS_NOT_RELEASE_EXT) -o $@ $< obj_testext/%.o: %.cpp $(H_FILES) mkdir -p $(dir $@) $(GCC) $(CC_LIBS) $(INCLUDE) $(CC_FLAGS_NOT_RELEASE_EXT) -o $@ $< gcc_version_check: ifneq ($(GCC_MAJOR_VERSION_GE_4), 1) $(warning "*** WARNING $(GCC) major version  

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *