компиляция командной строки xcode - PullRequest
1 голос
/ 22 марта 2012

Мне нужно использовать командную строку для сборки версий Debug и Release. процесс сборки в порядке, у меня есть небольшая проблема в том, что при создании отладочной версии мне нужны отладочные URL-адреса (открытая служба на Dev-серверах), а для выпуска для компиляции разные URL-адреса должны быть скомпилированы и должны выполняться через командную строку.

что я должен читать или делать для этого.

спасибо Алиена Шах

1 Ответ

0 голосов
/ 08 июля 2013

Для выпуска Xcode определяет NS_BLOCK_ASSERTIONS, но не определяет Posix's NDEBUG.Во-первых, вы должны добавить -DDEBUG=1 для отладки сборок и -DNDEBUG=1 для выпуска сборок, чтобы учесть упущения Apple.

Затем вы можете использовать макросы:

#if defined(NDEBUG)
# define MY_URL http://foo.com
#else
# define MY_URL http://bar.com
#endif

Вы также можете сделать что-нибудьнапример:

#if defined(NDEBUG)
  static const string MY_URL = "http://foo.com";
#else
  static const string MY_URL = "http://bar.com";
#endif

DEBUG не является стандартным для Posix, но вы обнаружите, что многие библиотеки включают диагностику при определении символа.Диагностика во время отладки хороша, так как она поможет вам найти ошибки в вашем коде.

В OWASP подробно рассматривается вопрос безопасности: Укрепление цепочки инструментов на основе C .

...