![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#1
|
|
![]() Щирий українець Сообщений: 1 456 Спасибо сказали: 3027 раз ![]() |
Нужна помощь от людей, работавших с zlib-архивами (трешечные LODы один из примеров).
Интересует все: от подключения библиотеки к проекту до компиляции и распространения готового приложения. В гугл не посылать. Спасибо. |
|
|
![]()
Сообщение
#2
|
|
![]() Immortal Сообщений: 2 415 Спасибо сказали: 60 раз ![]() |
для того чтобы хотябы что-то описать надо что-то иметь, а не учить человека с нуля компилировать проекты и собирать их, ну и т.п., я просто о том что надо хоть какую-то базу для того чтобы было желание отвечать на вопрос
вот пример из гугла ![]() http://cppbuilder.ru/articles/0002.php -------------------- |
|
|
![]()
Сообщение
#3
|
|
![]() Щирий українець Сообщений: 1 456 Спасибо сказали: 3027 раз ![]() |
Трабл в том, что работаю с bulider 6й версии, собираю и компилю родными средствами среды с настройками по умолчанию.
Попытался скачать библиотеки с http://www.zlib.net/ Содержимое архива повергло в панику: CODE amiga\ as400\ contrib\ doc\ examples\ msdos\ nintendods\ old\ qnx\ test\ watcom\ win32\ adler32.c ChangeLog CMakeLists.txt compress.c configure crc32.c crc32.h deflate.c deflate.h FAQ gzclose.c gzguts.h gzlib.c gzread.c gzwrite.c INDEX infback.c inffast.c inffast.h inffixed.h inflate.c inflate.h inftrees.c inftrees.h make_vms.com Makefile Makefile.in README treebuild.xml trees.c trees.h uncompr.c zconf.h zconf.h.cmakein zconf.h.in zlib.3 zlib.h zlib.map zlib.3.pdf zlib.pc.cmakein zlib.pc.in zlib2ansi zutil.c zutil.h Может я чего-то не понимаю, но кажется, что 3 метра текстовых файлов - многовато для реализации алгоритма сжатия. Разумеется что ченж-лог, примеры и "документацию" можно отбросить, но и без них в этой свалке много лишнего. Теперь собственно вопрос, для тех, кто работал с ZLIB: - Какие из этих файлов нужно подключать (и как, если это чем-то отличается от обычного #include "filename.h") - какие из этих файлов нужно распространять с исходниками (чтоб все проект запустился на другом компе) - Какие либы нужно будет распростанять со скомпилированным exe? - есть ли какие-то тонкости компиляции |
|
|
![]()
Сообщение
#4
|
|
![]() 😸🧡✊✌️ Сообщений: 16 436 Спасибо сказали: 3308 раз ![]() |
- Какие из этих файлов нужно подключать (и как, если это чем-то отличается от обычного #include "filename.h") #include "zlib.h"К проекту добавить соответствующий 'zlib.lib'. - какие из этих файлов нужно распространять с исходниками (чтоб все проект запустился на другом компе) Насколько я понимаю, все.- Какие либы нужно будет распростанять со скомпилированным exe? Тут всё просто, если zlib собрана статическая, то никакие, если динамическая, то 'zlib.dll'.- есть ли какие-то тонкости компиляции Не припоминаю.P.S. Вот, стопитсот лет назад делал: Compress.rar, может, почерпнёшь мудрости... -------------------- Я слежу за тобой!
![]() ![]() Цитата Всегда приятно осознавать, что кто-то делает что-то хуже, чем делал бы ты, если бы умел. Борис "Бонус" Репетур, "От винта!", выпуск 38. |
|
|
![]()
Сообщение
#5
|
|
![]() 😸🧡✊✌️ Сообщений: 16 436 Спасибо сказали: 3308 раз ![]() |
Suddenly: если используешь Qt, то там есть функции qCompress, qUncompress и qChecksum.
![]() -------------------- Я слежу за тобой!
![]() ![]() Цитата Всегда приятно осознавать, что кто-то делает что-то хуже, чем делал бы ты, если бы умел. Борис "Бонус" Репетур, "От винта!", выпуск 38. |
|
|
![]()
Сообщение
#6
|
|
![]() Щирий українець Сообщений: 1 456 Спасибо сказали: 3027 раз ![]() |
в том то и дело, что хочется по максиму отвязаться от всяческих тонкостей ИДЕ и фреймворков. Хочется нормального С++.
В моем понимании "нормального" - это когда скачиваешь библиотеку, подключаешь и используешь ее возможности. Я в не могу понять смысла предварительной сборки .lib, причем разной для разных IDE. И чем глубже погружаюсь - тем все печальнее выглядит. Цитата К проекту добавить соответствующий 'zlib.lib'. Соответствующий? >> есть ли какие-то тонкости компиляции Не припоминаю. >> Какие либы нужно будет распростанять со скомпилированным exe? Тут всё просто, если zlib собрана статическая, то никакие, если динамическая, то 'zlib.dll'. Для меня это взаимоисключающие ![]() |
|
|
![]()
Сообщение
#7
|
|
![]() 😸🧡✊✌️ Сообщений: 16 436 Спасибо сказали: 3308 раз ![]() |
Я в не могу понять смысла предварительной сборки .lib, причем разной для разных IDE. Не IDE, компиляторов/редакторов связей.Цитата К проекту добавить соответствующий 'zlib.lib'. Соответствующий?>> есть ли какие-то тонкости компиляции Не припоминаю. >> Какие либы нужно будет распростанять со скомпилированным exe? Тут всё просто, если zlib собрана статическая, то никакие, если динамическая, то 'zlib.dll'. Для меня это взаимоисключающие ![]() Цитата перед подключением windows.h написать #define WIN32_LEAN_AND_MEAN и #define VC_EXTRALEAN
-------------------- Я слежу за тобой!
![]() ![]() Цитата Всегда приятно осознавать, что кто-то делает что-то хуже, чем делал бы ты, если бы умел. Борис "Бонус" Репетур, "От винта!", выпуск 38. |
|
|
![]()
Сообщение
#8
|
|
VCMI developer Сообщений: 377 Спасибо сказали: 690 раз ![]() |
А разве .lib обязательна? Это ж статическая библиотека - можно или линковать к lib-е и получить независимый exe или линковать с .dll и затем выкладывать exe и dll.
Цитата в том то и дело, что хочется по максиму отвязаться от всяческих тонкостей ИДЕ и фреймворков. Хочется нормального С++. В моем понимании "нормального" - это когда скачиваешь библиотеку, подключаешь и используешь ее возможности. Часто можно найти уже скомпиленые либы для популярных ИДЕ. Вот только C++ builder в этот список уже давно не входит. Линукс тут конечно рвет всех и всякого: Код apt-get install zlib1g-dev # ставим либу g++ main.cpp -lz # линкуем к нужной либе Цитата причем разной для разных IDE. Разве? В Си (а zlib она сишная) интерфейс один и тот же должен быть независимо от ИДЕ. Цитата перед подключением windows.h написать #define WIN32_LEAN_AND_MEAN и #define VC_EXTRALEAN "Это не баг это фича" ![]() В windows.h есть, например, такие "фичи" как макросы min и max которые вызывают ошибки на переменных с таким именем, а в случае C++ - еще и при использовании стандартных std::min() и std::max() -------------------- Слава Україні!
|
|
|
![]()
Сообщение
#9
|
|
![]() 😸🧡✊✌️ Сообщений: 16 436 Спасибо сказали: 3308 раз ![]() |
Разве? В Си (а zlib она сишная) интерфейс один и тот же должен быть независимо от ИДЕ. Разные форматы объектных файлов и, соответственно, библиотек."Это не баг это фича" А кто говорит, что это баг? Это всего лишь неочевидные вещи.
![]() -------------------- Я слежу за тобой!
![]() ![]() Цитата Всегда приятно осознавать, что кто-то делает что-то хуже, чем делал бы ты, если бы умел. Борис "Бонус" Репетур, "От винта!", выпуск 38. |
|
|
![]() ![]() |
Текстовая версия | Сейчас: 27 September 2025 - 08:17 |
Copyright by Алексей Крючков
![]() Programming by Degtyarev Dmitry |
|