Платформа Mac OS X - это, по сути, разделяемая библиотека, то есть отдельный двоичный файл.
Обычно, когда запускается ваш главный исполняемый файл, ОС загружает framework / dylib в память и отображает символы, чтобы ваш главный исполняемый файл мог получить к ним доступ.
Обратите внимание, что framework / dylib (входит в приложение или нет), не должен содержать файлы заголовков, так как они нужны только во время компиляции.
С Xcode вы можете фактически решить, следует ли включать файлы заголовков, когда вы копируете платформу в ее установочный каталог (см. Этапы сборки).

Если вы не скопируете заголовочные файлы, люди не смогут использовать ваш framework / dylib (если, конечно, они не перепроектируют его).
Если вы все еще считаете, что фреймворк не подходит для ваших нужд, вы можете вместо этого создать статическую библиотеку.
Статическая библиотека - это отдельный объектный файл (обычно .a), который «включается» в ваш конечный двоичный файл во время ссылки.
Таким образом, у вас есть только один двоичный файл, содержащий код из библиотеки и вашего проекта.