c ++ 11 и boost_filesystem cout и printf не работают

Я столкнулся с проблемой с printf и cout при использовании boost / filesystem.hpp

Я создал проект C ++ в Eclipse Juno с настройками Mingw

objectfile.hpp содержит объявления и #include «boost / filesystem.hpp»
objectfile.cpp содержит определения и использование boost :: filesystem :: exist (…)
mainfile.cpp содержит следующий код:

#include <stdio.h>
using namespace std;

int main() {
printf("asdf\n");
cout <<"asdf"<<endl;
return 0;
}

mainfile.cpp не включает заголовок objectfile.hpp, но связывается на этапе компоновки. Также boost_system и boost_filesystem связаны между собой.

Проблема: выход пуст. Нет никакого вывода, пока я не удалю boost / filesystem.hpp и соответствующий код, а затем перекомпилирую.

Я еще не тестировал с другими библиотеками повышения. Может быть, у кого-то еще была похожая проблема?

Windows 7 64 бит
Eclipse Juno 64 bit -std = c ++ 11 опция компилятора
Boost 1.51 многопоточный динамически связанный

ОБНОВИТЬ

Я перестроил Boost 1.51 с этими параметрами:
-j8 toolset = gcc cxxflags = -std = gnu ++ 0x вариант = оптимизация релиза = скорость соединения = статическая многопоточность = multi —layout = system —prefix = boost install

и теперь это работает.

благодарю вас Маршалл Клоу. Отправьте ответ, и я приму его.

0

Решение

Повторная отправка в качестве ответа:

Возможно ли, что вы создали библиотеки boost с параметрами компилятора, отличными от вашей программы? Конкретно я бы проверил std=c++11,

1

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

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

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