boost :: regex linking проблема в Xcode 4.5.2

Я уверен, что этот вопрос был задан в разных ипостасях (заранее извиняюсь) —
Я использую Xcode 4.5.2

Очень простое терминальное приложение, которое ничего не делает, как следует …

#include <boost/regex.hpp>
int main(int argc, const char * argv[])
{
boost::regex regday_pattern("\\");
return 0;
}

Примите во внимание, что регулярное выражение в boost требует библиотеки, а не только заголовка boost. Будучи относительно новым для xcode и окружения unix, я немного запутался в том, как мне нужны мои настройки, чтобы я не получил следующую ошибку компоновки …

Неопределенные символы для архитектуры x86_64:
«Повышение :: basic_regex

Будем благодарны за любую помощь в этом вопросе — я прочитал несколько ответов на подобные вопросы, и у меня были проблемы с отображением их в моей ситуации.
ТИА

3

Решение

Возможно, вы получили ошибку компоновщика, потому что вы на самом деле не создавали библиотеки Boost.Regex.

Пожалуйста, следуйте инструкции по сборке из документации Boost:

Введите в командной строке следующие команды (не вводите $;
представляет подсказку оболочки):

$ cd path/to/boost_1_53_0
$ ./bootstrap.sh --help

Выберите свой
параметров конфигурации и снова вызовите ./bootstrap.sh без
опция —help. Если у вас нет разрешения на запись в каталог / usr / local / вашей системы, вы, вероятно, захотите хотя бы использовать

$ ./bootstrap.sh --prefix=path/to/installation/prefix

установить
где-нибудь еще. Также рассмотрите возможность использования --show-libraries а также
--with-libraries=library-name-list варианты, чтобы ограничить долгое ожидание, которое вы испытаете, если будете все строить. В заключение,

$ ./b2 install

оставит Boost-файлы в lib/ подкаталог
ваш установочный префикс. Вы также найдете копию Boost
Заголовки в include/ subdirectory префикса установки, так
Вы можете впредь использовать этот каталог в качестве #include путь вместо
Boost корневой каталог.

Наконец, убедитесь, что вы можете собрать и запустить Пример регулярного выражения из документации Boost.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]