Linux发行版的选择

  • Ubuntu LTS
  • openSUSE
  • Centos

尽量优选Ubuntu, 用户开发者多,而且较大的公司的开源项目测试Linux平台也是优先Ubuntu。

openSUSE也不错。但是大环境还是ubuntu。

安装常用的开发工具(这里针对C/C++/Qt)

  1. 先换源. 不然下载速度不给力。推荐清华或者科大的源 (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++

卸载Ubuntu上不常用的软件

安装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常用命令

apt学习

APT Vs. apt

不开发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常见问题的配置

  1. Linux Qt cannot find -lGL错误

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

Linux下C ,C ++, Qt开发环境的更多相关文章

  1. Linux学习心得之 Linux下命令行Android开发环境的搭建

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下命令行Android开发环境的搭建 1. 前言2. Jav ...

  2. Linux下快速搭建php开发环境

    php开发环境快速搭建 一.Linux下快速搭建php开发环境 1.安装XAMPP for Linux XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包,使用XA ...

  3. LINUX下搭建JAVA的开发环境

    LINUX下搭建JAVA的开发环境 (2009-07-13 10:04:13)     下面就将Linux下JAVA开发环境的搭建详细道来: 1.Linux下JDK的安装 至于下载JDK的二进制可执行 ...

  4. linux下怎么安装Go开发环境?linux部署golang

    linux下怎么安装Go开发环境?linux部署golang  0.请自行安装SSH远程工具 1.  SSH远程登录你的linux服务器 2.   yum install mercurial安装 me ...

  5. Ubuntu Linux下如何配置Android开发环境

    下载和安装Win7系统Android开发环境中讲了怎样在Win7系统中安装Android开发环境,那么怎样在Linux系统中配置Android开发环境呢?本篇文章就将演示如何使用Eclipse.And ...

  6. linux下arm平台Qt编译环境搭建与解析

    一.概述:      我们知道QTcreator.这仅仅是个IDE,他包含了一个编译器--qmake.这两者的关系与codeblocks和g++的关系一样,首先要明确这些.      而我们在linu ...

  7. 几个linux 下C/C++集成开发环境推荐

    链接地址:http://www.lupaworld.com/article-210675-1.html 摘要: 一.AnjutaAnjuta是一个多语言的IDE,它最大的特色是灵活,同时打开多个文件, ...

  8. Fedora Linux 下安装配置C开发环境Code::Blocks

    一.提前的话要说C语言和Linux的关系大家应该都不会陌生,Linux系统内核就是用C语言开发的,所以所有的Linux系统下面 都会有C的编译调试工具,不过这些工具都是命令式的,正式开发的话会很不方便 ...

  9. Linux C编程之一:Linux下c语言的开发环境

    ---恢复内容开始--- 今天开始根据Linux C编程相关视频的学习所做的笔记,希望能一直坚持下去... 1.开发环境的构成 编辑器:VI: 编译器:选择GNU  C/C++编译器gcc: 调试器: ...

  10. Linux下配置C/C++开发环境-----Eclipse

    先自己去官网下载jdk. 解压即安装. 然后在~/.bashrc文件里面配置下环境变量就行了.在文件最后添加以下路径,如下: JAVA_HOME=/home/username/jdk/jdk1.8.0 ...

随机推荐

  1. IP地址和端口

    IP地址是网络中计算机的唯一标识.没有IP地址,计算机无法接入互联网. IPv4地址32bit,用点分十进制表示,如202.38.64.3 IPv6地址128bit,用冒号分割十六进制表示,如2001 ...

  2. 在android项目中使用FontAwesome字体

    在android项目中使用FontAweSome图标集,可以方便的适配各种屏幕分辨率,不必在各种不同分辨率文件夹中新建资源文件.使用字体是一种很巧妙的方法,把图像以字体的方式呈现,这样以前设置为and ...

  3. 什么了解suite集合实现

    Testsuite继承BaseTestSuite其实内部的东西不是太多--生成suite集合的逻辑主要如下-我这里没有扒源码-因为他最终生成的TestsSuite关联的模块比较多--如果贴源码出来-- ...

  4. SDL软件安全读书笔记(一)

    # 如何应对当前的全球网络安全威胁? 开发安全漏洞尽可能少的软件,应该着眼于源头安全. 边界安全盒深度防御是重要的安全手段,但软件自身的安全是安全防护的第一关. 即使软件源头存在较少的漏洞,这些漏洞也 ...

  5. node+ajax实战案例(6)

    8.删除客户 8.1.发送id到后台 删除用户信息比较简单,只需要把对应行的id发送到后台就可以了 oTable.onclick = function (ev) { var ev = ev || ev ...

  6. MFC中窗口静态分割&视图切换

    目录 窗口静态分割 单个分割器 声明 准备视图 静态分割窗口&添加视图 使视图大小随窗口大小改变 多个分割器 声明 静态分割窗口&添加视图 使视图大小随窗口大小改变 视图切换 视图之间 ...

  7. C# 模型赋值

    /// <summary> /// 模型赋值 /// </summary> /// <param name="target">目标</pa ...

  8. .NET中一些关键词的意义

    const关键字用于修改字段或局部变量的声明.它指定字段或局部变量的值是常数,不能被修改.例如: const int x = 0; public const double gravitationalC ...

  9. numpy模块&pandas模块

    目录 numpy模块 pandas模块 numpy模块 import pandas as pd import numpy as np df=pd.Series(np.array(['a','b'])) ...

  10. 解决Centos7下中文显示乱码

    第一步:先查看是不是ctr的问题: SecureCRT的修改,选项→会话选项,将外观中的字符编码集修改为UTF-8即可,其他终端程序同理 如果不是则再参照如下文档操作:https://www.cnbl ...