Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 创建了指向/usr/bin/clang+的符号链接+-5.0,但该链接仅编译C文件_C++_Ubuntu_Clang - Fatal编程技术网

C++ 创建了指向/usr/bin/clang+的符号链接+-5.0,但该链接仅编译C文件

C++ 创建了指向/usr/bin/clang+的符号链接+-5.0,但该链接仅编译C文件,c++,ubuntu,clang,C++,Ubuntu,Clang,Ubuntu 16.04,没有GCC。安装的叮当声: sudo-apt-install-clang-5.0 创建了两个链接: sudo ln-s/usr/bin/clang-5.0 clang sudo ln-s/usr/bin/clang++-5.0 cclang 编译一个简单的C文件helloworld.C。无论是叮当声还是cclang都可以 编译C++文件: CCLAN HeloWord .CPP 有错误。相同错误消息如 CLANHOLLROLDL.CPP(C编译器编译C++文件) 但是

Ubuntu 16.04,没有GCC。安装的叮当声:
sudo-apt-install-clang-5.0

创建了两个链接:

sudo ln-s/usr/bin/clang-5.0 clang
sudo ln-s/usr/bin/clang++-5.0 cclang

编译一个简单的C文件helloworld.C。无论是叮当声还是cclang都可以

编译C++文件:<代码> CCLAN HeloWord .CPP

有错误。相同错误消息如<代码> CLANHOLLROLDL.CPP(C编译器编译C++文件)

但是,
/usr/bin/clang++-5.0helloworld.cpp
工作正常


我的符号链接创建有什么问题吗?

您无法创建到clang++的符号链接,它们无法工作。(clang++本身就是指向clang的符号链接,这可能会提示您问题所在)是的。clang++-5.0是一个符号链接
cclang->/usr/bin/clang++-5.0*
clang++-5.0->../lib/llvm-5.0/bin/clang++
。另一方面,创建的链接
clang
也指向另一个符号链接:
clang->/usr/bin/clang-5.0*
,以及
clang-5.0->../lib/llvm-5.0/bin/clang*”
clang`在C文件上可以正常工作,但是
cclang
不能。因此,启动编译器的符号链接的名称在决定其行为方面很重要,您是否同意?为什么链接的名称很重要?我的理解是符号链接的名称不会影响功能。它指向的文件完成了任务。你是在问技术上是如何完成的吗?链接的名称是传递给程序的argv[0],因此程序可以根据启动时使用的名称选择不同的行为。