यह अजीब लगता है। एक साधारण C ++ प्रोग्राम लें
#include <cmath>
#include <iostream>
int main(void) {
std::cout << "Square root of 9 is " << sqrt(9) << std::endl;
}
जो g++
(4.8) के साथ ठीक गुजरता है, लेकिन clang++
(3.3) के साथ संकलन करने में विफल रहता है ।
edd@don:/tmp$ g++ -o cmath cmath.cpp
edd@don:/tmp$ ./cmath
Square root of 9 is 3
edd@don:/tmp$ clang++ -o cmath cmath.cpp
In file included from cmath.cpp:2:
/usr/lib/gcc/i686-linux-gnu/4.8/../../../../include/c++/4.8/cmath:41:10: \
fatal error:
'bits/c++config.h' file not found
#include <bits/c++config.h>
^
1 error generated.
edd@don:/tmp$
मुझे संदेह है कि मुझे कुछ स्पष्ट रूप से याद आ रहा है।
और मेरे पास प्रासंगिक -dev
पैकेज है:
edd@don:/tmp$ COLUMNS=72 dpkg -l | grep "clang\|llvm"
ii clang-3.3 1:3.3-5ubunt i386 C, C++ and Objective-C compiler (
ii libclang-commo 1:3.3-5ubunt i386 clang library - Common developmen
ii libclang-commo 1:3.2repack- i386 clang library - Common developmen
ii libclang1 1:3.2repack- i386 clang library
ii libclang1-3.3 1:3.3-5ubunt i386 clang library
ii libllvm3.1:i38 3.1-2ubuntu2 i386 Low-Level Virtual Machine (LLVM),
ii libllvm3.2:i38 1:3.2repack- i386 Low-Level Virtual Machine (LLVM),
ii libllvm3.3:i38 1:3.3-5ubunt i386 Low-Level Virtual Machine (LLVM),
ii llvm-3.3 1:3.3-5ubunt i386 Low-Level Virtual Machine (LLVM)
ii llvm-3.3-dev 1:3.3-5ubunt i386 Low-Level Virtual Machine (LLVM),
ii llvm-3.3-runti 1:3.3-5ubunt i386 Low-Level Virtual Machine (LLVM),
edd@don:/tmp$
संपादित करें: मैं बग ट्रैकिंग सिस्टम की जांच करने में विफल रहा था, यह वास्तव में लॉन्चपैड में जाना जाता है ।
संपादित 2: Ubuntu 16.10 में, यह अंत में काम करता है:
edd@max:~/src/progs/C++(master)$ clang++ -o cmath cmath.cpp
edd@max:~/src/progs/C++(master)$ ./cmath
Square root of 9 is 3
edd@max:~/src/progs/C++(master)$
clang++
संस्करण 3.8.1 का उपयोग करना ।
मुझे बग रिपोर्ट दिखाई नहीं दे रही है, 13.10 अब समर्थित नहीं है, और 15.04 में 3.3 हटा दिया गया है। इसलिए मैंने इसे बंद करने के लिए मतदान किया।
—
user.dz
@ स्नेचर: आप समझते हैं कि मैंने यह लगभग दो साल पहले दायर किया था जब वितरण संस्करण और पैकेज चालू थे ?
—
डिर्क एडल्डबुलेटेल
हाँ मैं करता हूँ। मैं देख रहा हूं कि यह सवाल दूर हो गया है। मैं कोई भी जवाब देने वाला नहीं हूं। लेकिन अगर आप चाहें, तो आप बग रिपोर्ट से वर्कअराउंड का उल्लेख कर सकते हैं जो जोड़ते हैं
—
user.dz
-i /path-to-std-headers
। जो किसी भी बाद में यहाँ आ जाएगा। 7 मतों में कुछ आकर्षण है। :)
जो इसके लायक है उसके लिए अभी भी 2016 में 16.04 के तहत निर्माण (डिफ़ॉल्ट रूप से) नहीं होता है। उदास।
—
डर्क एडल्डबुलेटेल
मैं इसे आजमाऊंगा और आपको बताऊंगा।
—
user.dz