Лучший способ использовать zlib из macOS Какао? - PullRequest
0 голосов
/ 22 февраля 2019

Кажется, существует конфликт между версией zlib, используемой в SDK, и тем, что может существовать на компьютере пользователя.Например ...

В macOS 10.11.6 и Xcode 8 версия zlib, используемая во время компиляции, не совпадает с версией libz.dylib, загруженной во время выполнения.В частности, файл заголовка, используемый во время компиляции, предназначен для zlib v1.2.8, но файл dylib, загруженный во время выполнения, предназначен для 1.2.5.

Это может привести к сбою во время выполнения, поскольку он может попытаться вызвать функцию, которая нене существует в 1.2.5.Проблема в том, что заголовок (из SDK) думает, что мы используем 1.2.8, поэтому он скомпилирует код, специфичный для 1.2.8, на основе любого #if, определенного для проверки версии.

Что тогдалучший способ связать и использовать zlib?

Должен ли я скомпилировать его как статическую библиотеку и игнорировать предоставленную ОС версию?В настоящее время я делаю это и использую 1.2.8 в своем приложении, но это может вызвать проблемы для пользователя на 10.14.3.Я подумываю о переходе на динамическую библиотеку, но и здесь возникает ситуация, описанная выше.

...