【发布时间】:2017-01-18 03:20:38
【问题描述】:
我在 Ubuntu 16.10 "Yakkety" 上运行 Code::Blocks 版本 Code::Blocks 16.01。我使用的编译器是 GCC 6.2。
我无法编译任何东西,因为我试图将我的编译器切换到 Clang 3.9.1。
当我尝试重新构建之前已经构建的项目(此处名为“Hello, World!”)时,它会失败。构建日志是:
-------------- Build: Debug in Hello, World! (compiler: GNU GCC Compiler)---------------
g++-6 -Wall -g -O3 -std=c++1z -c "/home/ndos/바탕화면/Hello, World!/Hello, World!.cpp" -o "obj/Debug/Hello, World!.o"
g++-6 -o "bin/Debug/Hello, World!" "obj/Debug/Hello, World!.o"
/usr/bin/ld: obj/Debug/Hello, World!.o: relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 0 second(s))
1 error(s), 0 warning(s) (0 minute(s), 0 second(s))
当我创建一个新项目(此处名为“Hello, World!”)并尝试构建时,它也失败了。构建日志是:
-------------- Build: Release in Hello, World! (compiler: GNU GCC Compiler)---------------
g++-6 -Wall -O2 -O3 -std=c++1z -c "/home/ndos/바탕화면/Hello, World!/Hello, World!.cpp" -o "obj/Release/Hello, World!.o"
g++-6 -o "bin/Release/Hello, World!" "obj/Release/Hello, World!.o" -s
g++-6: error: obj/Release/Hello, World!.o: No such file or directory
g++-6: fatal error: no input files
compilation terminated.
Process terminated with status 1 (0 minute(s), 0 second(s))
2 error(s), 0 warning(s) (0 minute(s), 0 second(s))
我已经尝试过重新安装 Code::Blocks,重新安装 GCC,清除 Clang,将编译器切换回 GCC,但都没有成功。
【问题讨论】:
-
如果你已经解决了,你可以回答你自己的问题。
标签: c++ ubuntu gcc clang codeblocks