C ++ Wątki, std :: system_error - operacja niedozwolona? [duplikować

To pytanie ma już odpowiedź tutaj:

Jakie są prawidłowe opcje linków do używania std :: thread w GCC pod Linuksem? 6 odpowiedzi

Więc napisałem program do testowania wątków na 64-bitowym kubuntu linux, wersja 13.04. Właściwie okradłem kod z kogoś innego, kto pisał program testowy.

#include <cstdlib>
#include <iostream>
#include <thread>

void task1(const std::string msg)
{
    std::cout << "task1 says: " << msg << std::endl;
}

int main(int argc, char **argv)
{
    std::thread t1(task1, "Hello");
    t1.join();

    return EXIT_SUCCESS;
}

Skompilowałem przy użyciu:

g++ -pthread -std=c++11 -c main.cpp
g++ main.o -o main.out

Następnie uruchomiono:

./main.out

Na marginesie, kiedy Is -l, main.out pojawia się w zielonym tekście jak wszystkie pliki wykonywalne, ale ma również gwiazdkę na końcu nazwy. Dlaczego to

Powrót do problemu: kiedy uruchomiłem main.out, pojawił się błąd, który powiedział:

terminate called after throwing an instance of 'std::system_error'
  what():  Operation not permitted
Aborted (core dumped)

Czy masz jakieś pomysły, jak to naprawić?

questionAnswers(1)

yourAnswerToTheQuestion