C++ 克朗元';看不到标题

C++ 克朗元';看不到标题,c++,makefile,clang,C++,Makefile,Clang,我更新了clang,显然它忘记了在哪里可以找到标准库ie reactions/baseReaction.cc:11:10: fatal error: 'vector' file not found #include <vector> 但是当我尝试的时候 ln -s /usr/bin/c++ /usr/bin/clang++-libc++ 它给 ln: failed to create symbolic link ‘/usr/bin/clang++-libc++’: File ex

我更新了clang,显然它忘记了在哪里可以找到标准库ie

reactions/baseReaction.cc:11:10: fatal error: 'vector' file not found
#include <vector>
但是当我尝试的时候

ln -s /usr/bin/c++ /usr/bin/clang++-libc++
它给

ln: failed to create symbolic link ‘/usr/bin/clang++-libc++’: File exists
我仍然不能使用make

编辑:尝试

sudo update-alternatives --config c++

到目前为止没有欢乐


EDIT2:使用CXX=clang++-libc++修改makefile似乎有效。

比手动创建符号链接更明智,因为您似乎是在基于Debian的系统上,您可以尝试
sudo update alternations--config c++
让操作系统为您创建符号链接。它应该提供一个选择,你已经在系统上安装了所有C++编译器。(另请参见
更新备选方案的手册页,以供将来本地或本地参考。)



请注意,如果您想让文件
/usr/bin/c++
成为指向
/usr/bin/clang++-libc++
的符号链接,那么您的参数顺序是错误的。一个好的经验法则是,对于
ln
使用与
cp
mv
相同的参数顺序比手动创建符号链接更明智,因为您似乎是在基于Debian的系统上,您可以尝试
sudo update alternations--config c++
让操作系统为您创建符号链接。它应该提供一个选择,你已经在系统上安装了所有C++编译器。(另请参见
更新备选方案的手册页,以供将来本地或本地参考。)



请注意,如果您想让文件
/usr/bin/c++
成为指向
/usr/bin/clang++-libc++
的符号链接,那么您的参数顺序是错误的。一个好的经验法则是,对
ln
使用与对
cp
mv
相同的参数顺序,ln-s/usr/bin/c++/usr/bin/clang++-libc++
看起来是个非常糟糕的主意。试着改用
CXX=clang++-libc++make
(但可能还有其他问题)。好吧,我愚蠢地通过cmdline而不是makefile来做这件事,它似乎起了作用
ln-s/usr/bin/c++/usr/bin/clang++-libc++
看起来是个非常糟糕的主意。试着改用
CXX=clang++-libc++make
(但可能还有其他问题)。好吧,我愚蠢地通过cmdline而不是makefile完成了这项工作,它似乎起到了作用。另一个好主意是在ln上使用-I标志,这样它会在覆盖存在的内容之前询问您。这样,如果订单是向后的,它会问你是否要覆盖你要复制的东西,这显然是错误的。我尝试了SUDO更新选项——配置C++,而它允许我选择不同的编译器前端,但它仍然不能工作。我在第一条评论中也尝试了这个解决方案,但仍然找不到向量头。要检查一下,您的系统中是否有这些文件?
find/usr/include/c++|grep vector
是否生成实际的头文件?/usr/include/c++/4.8/debug/vector/usr/include/c++/4.8/vector等等。另一个好主意是在ln上使用-i标志,以便在覆盖存在的内容之前询问您。这样,如果订单是向后的,它会问你是否要覆盖你要复制的东西,这显然是错误的。我尝试了SUDO更新选项——配置C++,而它允许我选择不同的编译器前端,但它仍然不能工作。我在第一条评论中也尝试了这个解决方案,但仍然找不到向量头。要检查一下,您的系统中是否有这些文件?
find/usr/include/c++|grep vector
是否生成实际的头文件?/usr/include/c++/4.8/debug/vector/usr/include/c++/4.8/vector等
sudo update-alternatives --config c++
CXX=clang++-libc++ make