Linker 对std::condition_变量的未定义引用::notify_one GLIBCXX_3.4.11

Linker 对std::condition_变量的未定义引用::notify_one GLIBCXX_3.4.11,linker,clang,Linker,Clang,我正在尝试使用Clang而不是默认GCC构建和链接库,并收到以下链接器错误: /usr/bin/ld: build/temp.linux-x86_64-3.6/torch/csrc/autograd/engine.o: undefined reference to symbol '_ZNSt18condition_variable10notify_oneEv@@GLIBCXX_3.4.11' 我的命令是: CC="clang-5.0" CXX="clang++-5.0" LDSHARED="

我正在尝试使用Clang而不是默认GCC构建和链接库,并收到以下链接器错误:

/usr/bin/ld: build/temp.linux-x86_64-3.6/torch/csrc/autograd/engine.o: undefined reference to symbol '_ZNSt18condition_variable10notify_oneEv@@GLIBCXX_3.4.11'
我的命令是:

CC="clang-5.0" CXX="clang++-5.0"  LDSHARED="clang -shared" python setup.py install

删除
LDSHARED
解决了这个问题,但我需要使用
clang
链接,因为在完整示例中
CFLAGS
包含GCC无法识别的标志。

clang默认是针对
libc++
()而不是
libstdc++
,而代码似乎是根据它构建的。添加
LDFLAGS=“-stdlib=libstdc++”
解决了这个问题