Ben de birkaç sorun vardı (Ubuntu 13.04 64-bit, g ++ - 4.8, eclipse Juno 3.8.1, CDT 6.0.0). Yukarıda bir çok şeyden bahsedildi, bunları tekrarladığım için üzgünüm, ancak ek olarak
std::thread
c ++ 11'in bir parçası olarak (linker için -pthread ekleyerek bu sorunu çözer). Her neyse, nihayet bu ayarlar iyi çalıştı:
Proje -> Özellikler -> C / C ++ Derleme -> Ayarlar -> Çeşitli. Ekle
-std=c++11
GCC ve G ++ derleyicileri için işaret. Uygula'yı tıklayın.
Bağlayıcı için aynı pencere, Çeşitli, Bağlayıcı bayrakları,
-pthread
bayrağı. Paylaşılan kitaplık ayarları, Paylaşılan nesne adı,
-Wl,--no-as-needed
bayrak da. Uygula'yı tıklayın.
C / C ++ Genel -> Yollar ve semboller -> Semboller SEKMESİ, GNU C ++ seçili,
__GXX_EXPERIMENTAL_CXX0X__
(değersiz)
bayrağı. Uygula'yı tıklayın.
C / C ++ Genel -> Önişlemci Yolları ekle .. -> Sağlayıcılar sekmesi: kontrol et
CDT GCC Yerleşik Derleyici Ayarları
ve "derleyici özelliklerini alma komutu" için,
-std=c++11
bayrağı. Paylaş'ın işaretini kaldırın. Uygula'yı tıklayın.
CDT Mangages Build Setting Entries, bunu da kontrol edin. Diğer ikisinin işaretini kaldırın. Uygula'yı tıklayın.
Girişler sekmesine geri dönersek, GNU C ++ CDT Managages Build Ayar Girişleri, artık
__GXX_EXPERIMENTAL_CXX0X__
girişi.
Bu kadar. Kod yazarken, yazarken
std::
şimdi thread sınıfını otomatik olarak tamamlayabilir, derlemeler iyi çalışmalı ve
std::system_error'what(): Enable multithreading to use std::thread: Operation not permitted
işlem esnasında.
std::unique_ptr<char[]>