Linux發行版的選擇
- Ubuntu LTS
- openSUSE
- Centos
盡量優選Ubuntu, 用戶開發者多,而且較大的公司的開源項目測試Linux平台也是優先Ubuntu。
openSUSE也不錯。但是大環境還是ubuntu。
安裝常用的開發工具(這里針對C/C++/Qt)
- 先換源. 不然下載速度不給力。推薦清華或者科大的源 (software & update中設置)
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential -y
sudo apt-get install git -y
sudo apt-get install gcc -y
sudo apt-get install g++ -y
sudo apt-get install cmake -y
sudo apt-get install vim -y
sudo apt-get install subversion -y
也可以一次性安裝多個。中間用空格分割就行了。
sudo apt-get install build-essential -y 最好先運行一下這個。
sudo apt install gcc g++ cmake git subversion vim -y
推薦一個vim的配置方案 https://github.com/chxuan/vimplus
注意:在centos和openSUSE上不是g++
yum install gcc
yum install gcc-c++
zypper install gcc
zypper install gcc-c++
安裝openGL
參考:https://www.linuxidc.com/Linux/2017-03/141555.htm
sudo apt-get install build-essential
sudo apt-get install libgl1-mesa-dev
sudo apt-get install libglu1-mesa-dev
sudo apt-get install libegl1-mesa-dev
// 這兩個是OpenGL Utility Toolki。兩個任選一個
sudo apt-get install libglut-dev
// 或者,建議這個
sudo apt-get install freeglut3-dev
中文輸入法
搜狗拼音Linux版(不用這個也行,選擇其他的。github上有。吐槽一下,centos自帶的是真垃圾)
安裝搜狗輸入法
需要先安裝fcitx框架
sudo apt install fcitx-bin -y
sudo apt install fcitx-table -y
或者按照搜狗官方的提示方法安裝fcitx
然后去搜狗的官網下載deb包,然后用Ubuntu自帶的Ubuntu Software安裝。或者 dpkg -i xxx.deb
然后需要重啟(需要重啟才行)。
安裝sublime text
sublime text 或者vscode vscode更為強大,sublime更快更輕
安裝vscode
去官網看doc。有不同系統的配置方案。鏈接
apt-get常用命令
不開發qt,就使用qt的IDE配合cmake開發cpp。(類似clion)
Qt環境
Qt 下載 Qt科大鏡像下載鏈接
下載適合你平台的安裝包。win和macOS平台直接點擊安裝就行了。
這里稍微說一下Linux下的
// xxx代表版本號
chmod a+x ./qt-opensource-linux-x64-xxx.run
sudo ./qt-opensource-linux-x64-xxx.run
安裝最好是普通用戶下,但是安裝時候用 sudo來安裝。 這樣安裝到/opt/下去。方便所有用戶使用。
不做Qt開發可以只下載Qt的IDE--QtCreator。 (CLion 寫C/C++ 也不錯。不過更多人的是用vim。)
對於Linux系統,Qt官方的安裝包總是假定C++編譯器compiler、調試器debugger、生成器make以及其他開發工具由該操作系統自己提供,另外構建Qt圖形界面程序還需要OpenGL庫文件(擴展名為 .a 和 .so)和頭文件(擴展名為 .h), OpenGL的開發庫也是需要操作系統自己提供。所以在安裝Qt官方run文件之前,必須先安裝好Linux系統自己軟件源里面 的GNU開發工具集和OpenGL開發庫。下面針對三類 Linux 操作系統安裝相應的GNU開發工具集和OpenGL開發庫, 請注意安裝軟件都需要root權限,並且要聯網安裝。
Qt常見問題的配置
openSUSE
find /usr -name libGL*
tudou@linux:~> find /usr -name libGL*
/usr/lib64/libGL.so.1
/usr/lib64/libGL.so.1.7.0
/usr/lib64/libGLESv1_CM.so.1
/usr/lib64/libGLESv1_CM.so.1.2.0
/usr/lib64/libGLESv2.so.2
/usr/lib64/libGLESv2.so.2.1.0
/usr/lib64/libGLX.so.0
/usr/lib64/libGLX.so.0.0.0
/usr/lib64/libGLdispatch.so.0
/usr/lib64/libGLdispatch.so.0.0.0
/usr/lib64/libGLU.so.1
/usr/lib64/libGLU.so.1.3.1
/usr/lib64/libGLX_indirect.so.0
/usr/lib64/libGLX_mesa.so
/usr/lib64/libGLX_mesa.so.0
/usr/lib64/libGLX_mesa.so.0.0.0
創建鏈接
Linux 系統中可能存在多個版本的 libGL.so,為任意一個版本創建鏈接即可。普通用戶沒有權限創建鏈接,需要root權限
sudo ln -s /usr/lib64/libGL.so.1 /usr/lib/libGL.so
centos7
find /usr -name libGL
or
locate libGL
# output
# 查找 libGL 所在位置
[root@localhost ~]# locate libGL
/usr/lib64/libGL.so
/usr/lib64/libGL.so.1
/usr/lib64/libGL.so.1.2.0
/usr/share/doc/mesa-libGL-9.2.5
/usr/share/doc/mesa-libGL-9.2.5/COPYING
# 創建鏈接
# Linux 系統中可能存在多個版本的 libGL.so,為任意一個版本創建鏈接即可。普通用戶沒有權限創建鏈接,需要root權限
[root@localhost ~]# sudo ln -s /usr/lib64/libGL.so.1 /usr/lib/libGL.so
Ubuntu,ta有點特殊
find /usr -name libGL*
# output
gsw@ubuntu:~$ find /usr -name libGL*
/usr/lib/x86_64-linux-gnu/libGL.so.1.0.0
/usr/lib/x86_64-linux-gnu/libGLdispatch.so.0.0.0
/usr/lib/x86_64-linux-gnu/libGLESv2.so.2
/usr/lib/x86_64-linux-gnu/libGLX.so.0
/usr/lib/x86_64-linux-gnu/libGL.so.1
/usr/lib/x86_64-linux-gnu/libGLX_indirect.so.0
/usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0
/usr/lib/x86_64-linux-gnu/libGLX.so.0.0.0
/usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0
/usr/lib/x86_64-linux-gnu/libGLU.so.1
/usr/lib/x86_64-linux-gnu/libGLESv2.so.2.0.0
/usr/lib/x86_64-linux-gnu/libGLdispatch.so.0
/usr/lib/x86_64-linux-gnu/libGLU.so.1.3.1
#創建軟鏈接
sudo ln -s /usr/lib/x86_64-linux-gnu/libGL.so.1 /usr/lib/libGL.so
更改Qt安裝文件的默認權限

文件的所有者的權限是可以更改文件的。我個人認為這樣不太妙,當我用refactor批量改字段名的時候可能發生意外。
但是最好不要這樣。
建議把重要文件夾所有用戶的權限都修改為 Read-Only ,Access files

