OSX Как скомпилировать фреймворк, используя GCC/G++, сидя в текущем рабочем каталоге или подкаталоге C/C++

Надеюсь, это нормально. Но так как я понял это некоторое время назад из-за большой борьбы и еще не видел этого в переполнении стека, я решил, что я и отправлю вопрос и ответ.

Этот вопрос / решение предназначено для пользователей OSX, чтобы скомпилировать платформу с использованием GCC или G++ без необходимости иметь платформу по следующему пути в своей системе.

/System/Library/Frameworks/

1 ответ

Решение

Этот код скомпилирует фреймворк из указанного каталога в вопросе. (Отвечено ранее) Как скомпилировать программу на C, которая использует Framework без использования Xcode

gcc ...  -framework frameworkName a.c b.c ... -o out

Этот код скомпилирует фреймворк из пользовательского каталога. (Не отвечал раньше, насколько я видел). Пример следующего каталога / файла.

/alt/path/to/framework/frameworkName.framework

,

FLAGS+="-F /alt/path/to/framework/ -framework frameworkName rpath /alt/path/to/framework/"
gcc ...  $FLAGS a.c b.c ... -o out

Это будет пример подкаталога рабочего каталога. Я знаю. / Обычно это соглашение, но я не могу вспомнить, сработало ли это для меня или нет здесь.

FLAGS+="-F $(PWD)/alt/path/to/framework/ -framework frameworkName rpath $(PWD)/alt/path/to/framework/"
gcc ...  $FLAGS a.c b.c ... -o out 

Это комбинация / System / Library / Frameworks / path и пути $(PWD)/alt/path/to/framework/ в одной и той же компиляции.

FLAGS+="-F $(PWD)/alt/path/to/framework/ -framework frameworkName2 rpath $(PWD)/alt/path/to/framework/"
gcc ...  -framework frameworkName1 $FLAGS a.c b.c ... -o out

Если кто-то найдет этот ответ / вопрос по переполнению стека, я немедленно удалю свой "вопрос". Целью этого было сделать переносимость фреймворков для людей, кроме меня. Как? Потому что, если инфраструктура находится в рабочем каталоге, ее можно легко перемещать с помощью самой папки / файлов. Очевидно, что это не обычное дело, которое люди пытаются, но, может быть, это сделает кого-то днем.

Другие вопросы по тегам