crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Что нужно дописать в опциях компилятора?, подозреваю, что дело в них
Гость_Dmitry_*
сообщение 7.7.2009, 20:30
Сообщение #1





Гости








    


Имеем Vista+mingw 4.4.0+Netbeans IDE
Собрал boost 1.39
Вроде ошибок bjam не выдал, решил проверить работоспособность, в качестве теста взял пример из wikipedia:
Раскрывающийся текст
#include <boost/thread/thread.hpp>
#include <iostream>

using namespace std;

void hello_world()
{
  cout << "Здравствуй мир, я thread!" << endl;
}

int main(int argc, char* argv[])
{
  // запустить новый поток, вызывающий функцию "hello_world"
  boost::thread my_thread(&hello_world);
  // ждем завершения потока
  my_thread.join();

  return 0;
}


Указал include-директорию C:\boost\include
Указал директорию для lib (опция -L) C:\boost\lib

Как результат получаю:
Раскрывающийся текст
Цитата
Running "C:\msys\1.0\bin\make.exe -f Makefile CONF=Debug" in C:\Users\Dmitry\Documents\NetBeansProjects\test_boost

/bin/make -f nbproject/Makefile-Debug.mk SUBPROJECTS= .build-conf
make[1]: Entering directory `/c/Users/Dmitry/Documents/NetBeansProjects/test_boost'
/bin/make -f nbproject/Makefile-Debug.mk dist/Debug/MinGW-Windows/test_boost.exe
make[2]: Entering directory `/c/Users/Dmitry/Documents/NetBeansProjects/test_boost'
mkdir -p dist/Debug/MinGW-Windows
g++.exe -o dist/Debug/MinGW-Windows/test_boost -s build/Debug/MinGW-Windows/main.o -L/C/boost/lib
build/Debug/MinGW-Windows/main.o: In function `main':

C:\Users\Dmitry\Documents\NetBeansProjects\test_boost/main.cpp:16: undefined reference to `boost::thread::join()'

C:\Users\Dmitry\Documents\NetBeansProjects\test_boost/main.cpp:18: undefined reference to `boost::thread::~thread()'

C:\Users\Dmitry\Documents\NetBeansProjects\test_boost/main.cpp:18: undefined reference to `boost::thread::~thread()'

build/Debug/MinGW-Windows/main.o:c:/boost/include/boost-1_39/boost/thread/win32/thread_primitives.hpp:180: undefined reference to `boost::thread_resource_error::thread_resource_error()'

build/Debug/MinGW-Windows/main.o:c:/boost/include/boost-1_39/boost/thread/win32/thread_primitives.hpp:180: undefined reference to `boost::thread_resource_error::~thread_resource_error()'

build/Debug/MinGW-Windows/main.o: In function `thread<void (*)()>':

c:/boost/include/boost-1_39/boost/thread/detail/thread.hpp:188: undefined reference to `boost::thread::start_thread()'

collect2: ld returned 1 exit status

make[2]: *** [dist/Debug/MinGW-Windows/test_boost.exe] Error 1
make[2]: Leaving directory `/c/Users/Dmitry/Documents/NetBeansProjects/test_boost'
make[1]: *** [.build-conf] Error 2
make[1]: Leaving directory `/c/Users/Dmitry/Documents/NetBeansProjects/test_boost'
make: *** [.build-impl] Error 2

Build failed. Exit value 2.


С частями boost, которые не требуют сборки, проблем нет - все работает.

Что-то уже 2 неделю гуглю, но понять причину проблемы не могу :(
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Tonal
  опции профиля:
сообщение 8.7.2009, 8:03
Сообщение #2


Активный участник
***

Группа: Участник
Сообщений: 452
Регистрация: 6.12.2007
Из: Новосибирск
Пользователь №: 34

Спасибо сказали: 69 раз(а)




Репутация:   17  


С цифарками - чтобы можно было точно указать версию боста.
mt - multi threda
s - вроде бы shared.
Посмотри в доке по системе сборки - это всё детально описано.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 26.11.2024, 14:20