2013-07-24 21 views
5

nelerdir OS konusunda emin derleyici/bağlayıcıOS X clang -pthread

i uygun derleyici/bağlayıcı seçeneklerini ayarlamak -pthread kullanarak biliyoruz GCC ile OS X'te clang pthread kütüphaneyi kullanma gereksinimleri, ama Clang ile X. derlerken ancak bağlama değilken

air:~ jose$ clang++ -c test.cpp -pthread 
air:~ jose$ clang++ -o test -pthread test.o 
clang: warning: argument unused during compilation: '-pthread' 

air:~ jose$ g++ -c test.cpp -pthread 
air:~ jose$ g++ -o test -pthread test.o 
+0

Tam olarak aynı olmalı - Eminim. –

+0

http://stackoverflow.com/questions/2391194/what-is-gs-pthread-equiv-in-clang – DrYap

+0

sadece eklediğim örneğe bakın, clang'ın çalıştırılabilir dosyayı bağlarken -pread olması gerekmez. –

cevap

12

clang -pthread gerektirir. Bu can sıkıcı, ama davranış gözlenir: Ben de clang bir -lpthread eklemek için kullanılan düşünüyorum

$ clang -c x.cpp 
$ clang -pthread -c x.cpp 
$ clang -o x x.o 
$ clang -pthread -o x x.o 
clang: warning: argument unused during compilation: '-pthread' 
$ 

$ clang --version 
Apple LLVM version 5.0 (clang-500.2.76) (based on LLVM 3.3svn) 
Target: x86_64-apple-darwin13.0.0 
Thread model: posix 
$ 
+0

Aynı anda derleme ve bağlama, "-pread" ile/olmadan bir uyarı veriyor mu? ('clang -o x xcp', sanırım) Cevaplarınızda denemediğiniz tek kombinasyon bu. (Mac'e kolay erişimim yok, ancak bir tane geliştirmeye çalışıyorum ...) –

+0

Hayır. Clang -pthread -o x xcc bir uyarı vermiyor. – bjori

+0

artık değil ... – vy32

0

.

+0

Bu anahtarın ne anlama geldiğini ve sorunun nasıl çözüleceğini açıklarsanız daha iyi olur –