Russian Qt Forum
Апрель 23, 2024, 12:36 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: сборка из Qt src zlib.dll под MinGW  (Прочитано 3973 раз)
sid
Гость
« : Август 31, 2017, 16:14 »

возник вопрос

при компиляции исходников zlib
  выдает:
\zlib_qt59_src\gzread.c:-1: error: undefined reference to `_imp__z_crc32'
причем 111 ошибок
 почему он ругается на линковку к dll? ведь ее я и собираю (
(причем делаю по видио и там у парня все четко получилось но был MinGW 4.8 у меня 5.3 - 32bit
https://www.youtube.com/watch?v=9JkHMmIeSNk&list=PL54fdmMKYUJvn4dAvziRopztp47tBRNum&index=124)

 Спасибо!

что  делаю:
- я биру исходники
D:\Qt\5.9\Src\qtbase\src\3rdparty\zlib\
- создаю проект
qmake -project
правлю:
TEMPLATE = lib
и убираю # minigzip.c \ - ошибка 2 main()

получаю проект :
######################################################################
# Automatically generated by qmake (3.1) Thu Aug 31 15:41:27 2017
######################################################################

TEMPLATE = lib
TARGET = zlib_qt59_src
INCLUDEPATH += .

# The following define makes your compiler warn you if you use any
# feature of Qt which has been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0

# Input
HEADERS += crc32.h \
           deflate.h \
           gzguts.h \
           inffast.h \
           inffixed.h \
           inflate.h \
           inftrees.h \
           trees.h \
           zconf.h \
           zlib.h \
           zutil.h
SOURCES += adler32.c \
           compress.c \
           crc32.c \
           deflate.c \
           example.c \
           gzclose.c \
           gzlib.c \
           gzread.c \
           gzwrite.c \
           infback.c \
           inffast.c \
           inflate.c \
           inftrees.c \
           # minigzip.c \
           trees.c \
           uncompr.c \
           zutil.c
Записан
sergek
Гипер активный житель
*****
Offline Offline

Сообщений: 870


Мы должны приносить пользу людям.


Просмотр профиля
« Ответ #1 : Август 31, 2017, 16:22 »

А зачем надо собирать - она же есть в составе Qt (LIBS += -lz)?
Записан

Qt 5.13.0 Qt Creator 5.0.1
Win10, Ubuntu 20.04
sid
Гость
« Ответ #2 : Август 31, 2017, 19:16 »

спасибо!
я пока сделал через qCompress и qUncompress

но непонятна сама природа ошибок,
\zlib_qt59_src\gzread.c:-1: error: undefined reference to `_imp__z_crc32'
получилось на все функции такое сообщение, в обоих режимах Debug и Release ((

Записан
Bepec
Гость
« Ответ #3 : Август 31, 2017, 19:20 »

Не найдета реализация функции бла бла бла. Что говорит о том, что в проект либо не подключена либа, либо отсутствует cpp файл.
Так же как вариант перепутан порядок сборки проекта.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.105 секунд. Запросов: 22.