Я установил boost, поэтому я пытаюсь запустить компилятор следующим образом: g++ -LC:\MinGW\boost_1_55_0\stage\lib -lboost_regex-mgw49-mt-1_55 test.cpp
Моя программа test.cpp
не очень сложна:
#include <iostream>
int main()
{
std::cout << "Hello, world!" << std::endl;
boost::regex rex("[test]");
}
Я, конечно, потерпел неудачу: error: 'boost' has not been declared
. Я не могу понять, что должен написать в файле test.cpp
рядом с #include <iostream>
? #include <boost>
не работает, я получаю ошибку fatal error: boost: No such file or directory
. #include <boost/regex.hpp>
также дает эту ошибку, может быть #include <boost_regex-mgw49-mt-1_55>
? Но это все еще не работает.
Вам нужно включить regex.hpp в свою основную часть. Вы намекаете, что пытались, но, похоже, это не сработало.
Убедитесь, что regex.hpp - это то, где вы указываете компилятору относительно одного из ваших поисковых каталогов. Недостаточно сказать, чтобы компилятор включил boost/regex.hpp, файл должен существовать там, где компилятор ищет его, чтобы его можно было найти.
Вам нужно будет скопировать этот файл из любого места, где вы его загрузили, где-то компилятор будет знать, для его поиска. Как только вы это сделаете, он должен найти его, и эта ошибка должна исчезнуть.
Также обратите внимание, что то же самое относится к объектным файлам, к которым вы пытаетесь подключиться. Если компоновщик не может найти этот файл, вы просто получите ошибку компоновщика, как только вы очистите эту ошибку компилятора.