很多時候我們的機器上會安裝多個版本的gcc,但預設的gcc並不一定指向我們想要的gcc版本。
如果gcc版本太低,會報錯:
cc1plus: 錯誤:無法識別的命令列選項「-std=c++
11」cc1plus: 錯誤:無法識別的命令列選項「-std=c++
11」cc1plus: 錯誤:無法識別的命令列選項「-std=c++
11」
如果版本太高,warning很可能會變成error,如:
third_party/boringssl/crypto/bio/file.c: in function 『file_ctrl』:
third_party/boringssl/crypto/bio/file.c:
186:
11: error:
this statement may fall through [
-werror=implicit-fallthrough=
] num =0;
~~~~
^~~third_party/boringssl/crypto/bio/file.c:
187:
5: note: here
case
bio_c_file_seek:^
~~~
選擇合適的gcc版本非常重要。
如果在centos系統上,可以參考這篇文章進行gcc的版本切換:在centos上通過yum直接安裝最新版gcc和開發工具
scl enable devtoolset-
6 bash
切換後c++
,g++
等就指向了g++ - 6。
如果沒有root許可權,或者不是centos系統,那麼可以進行如下操作:
make cc
=gcc-
6cpp
=g++-6
cxx=g++-6
ld=g++
-6
這樣可以不用苦逼地去修改makefile檔案,直接在make時指定gcc的版本。
可以節省大量的去手動修改makefile檔案的時間。
參考:c++ - set gcc version for make in shell - stack overflow
另外乙個做法如下:
exportcc=
/usr/bin/clang
export
cxx=
/usr/bin/clang++
-
> # update-alternatives --config c++
there are 2 choices for the alternative c++
(providing /usr/bin/c++).
selection path priority status
----
----
----
----
----
----
----
----
----
----
----
----
----
----
----*0
/usr/bin/g++
20 auto mode
1/usr/bin/clang++
10 manual mode
2/usr/bin/g++
20 manual mode
press to keep the current choice[*]
, or type selection number:
Thinkphp 資料操作指南 查詢技巧
字段別名 可以在查詢的字段裡面使用別名,例如 以mysql為例,我們可以使用 user where status 1 field id,email,username as name limit 10 findall 可以生成下面的sql語句 select id,email,username as n...
《跑跑卡丁車》漂移技巧指南
文 電信一區 劍龍雲 1.初級漂移 初級漂移是最簡單的入門,初級漂移只需要掌握shift鍵的力度和按下反方向保持車身平穩.操作方法 shift 向右漂移 達到入彎角度後按 保持車身平穩.2.漂移噴射 在漂移完成後噴火,使漂移失去的速度快速提公升.操作方法 漂移完成後 漂移時地上的痕跡消失後 按下 3...
VIM操作指南
一.移動 h,j,k,l 對應左,下,上,右 w 移動游標向前乙個單詞 b 移動游標向後乙個單詞 nw 移動游標向前n個單詞 nb 移動游標向後n個單詞 移動游標到行首 移動游標到當前行的第乙個字母處 移動游標到下乙個句子 移動游標到上乙個句子 gg 移動游標到頁的第一行 g 移動游標到頁的最後一行...