ubuntu20环境搭建+Qt6安装

1 镜像地址

下载源 http://old-releases.ubuntu.com/releases/

2 安装

博主虚拟机中安装的。

请添加图片描述


虚拟机中要安装 vmware tools

sudo apt-get autoremove open-vm-tools
sudo apt-get install open-vm-tools-desktop
安装时全部输入Y
然后重启

3 更改源

cd /etc/apt/
cp sources.list sources.list.bk
sudo vim sources.list
添加如下内容
deb https://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb https://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb https://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

# deb https://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
# deb-src https://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

deb https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
# 添加上述内容后update
sudo apt-get update

阿里源 https://developer.aliyun.com/mirror/
清华源 https://mirrors.tuna.tsinghua.edu.cn/
华科源 http://mirrors.ustc.edu.cn/
网易源 http://mirrors.163.com/

请添加图片描述


点击第一个ubuntu按钮,然后找到对应20版本的源。

请添加图片描述

4 搭建工作环境

4.1 删除libreoffice

libreoffice虽然是开源的,但是Java写出来的office执行效率实在不敢恭维,装完系统后果断删掉。

sudo apt-get remove libreoffice-common

4.2 删除Amazon的链接

sudo apt-get remove unity-webapps-common

4.3 删掉基本不用的自带软件(用的时候再装也来得及)

sudo apt-get remove thunderbird totem rhythmbox empathy brasero simple-scan gnome-mahjongg aisleriot gnome-mines cheese transmission-common gnome-orca webbrowser-app gnome-sudoku  landscape-client-ui-install  
sudo apt-get remove onboard deja-dup  

4.4 安装vim

sudo apt-get install vim
如果报错一般需要先
sudo apt-get remove vim-common
然后
sudo apt-get install vim
  • 配置
    配置vim,只需在Home目录创建一个/.vimrc文件即可以配置vim了,如需安装插件,在/.vim目录下创建一个bundle文件夹,插件装在里面。(我通过Vundle管理插件,自行百度Vundle怎么使用),可以参考我的vimrc配置文件: 含有完整的注释
set nocompatible
filetype on

" 当新建 .h .c .hpp .cpp .mk .sh等文件时自动调用SetTitle 函数
autocmd BufNewFile *.[ch],*.hpp,*.cpp,Makefile,*.mk,*.sh exec ":call SetTitle()" 
" 加入注释 
func SetComment()
    call setline(1,"/****************************************************************") 
    call append(line("."),   "*   Copyright (C) ".strftime("%Y")." uMore Ltd. All rights reserved.")
    call append(line(".")+1, "*   ") 
    call append(line(".")+2, "*   File Name:".expand("%:t")) 
    call append(line(".")+3, "*   Author: worthsen")
    call append(line(".")+4, "*   Date: ".strftime("%Y年%m月%d日")) 
    call append(line(".")+5, "*   Description:") 
    call append(line(".")+6, "*")
    call append(line(".")+7, "****************************************************************/") 
    call append(line(".")+8, "")
endfunc

" 加入shell,Makefile注释
func SetComment_sh()
    call setline(3, "#****************************************************************") 
    call setline(4, "#   Copyright (C) ".strftime("%Y")." uMore Ltd. All rights reserved.")
    call setline(5, "#   ") 
    call setline(6, "#   File Name:".expand("%:t")) 
    call setline(7, "#   Author:worthsen")
    call setline(8, "#   Date:".strftime("%Y年%m月%d日")) 
    call setline(9, "#   Description:") 
    call setline(10, "#")
    call setline(11, "#****************************************************************")
    call setline(12, "")
    call setline(13, "")
endfunc 

" 定义函数SetTitle,自动插入文件头 
func SetTitle()
    if &filetype == 'make' 
        call setline(1,"") 
        call setline(2,"")
        call SetComment_sh()
    elseif &filetype == 'sh' 
        call setline(1,"#!/system/bin/sh") 
        call setline(2,"")
        call SetComment_sh()

    else
        call SetComment()
        if expand("%:e") == 'hpp' 
            call append(line(".")+9, "#ifndef _".toupper(expand("%:t:r"))."_H") 
            call append(line(".")+10, "#define _".toupper(expand("%:t:r"))."_H") 
            call append(line(".")+11, "#endif //".toupper(expand("%:t:r"))."_H") 
        elseif expand("%:e") == 'h' 
            call append(line(".")+9, "#ifndef _".toupper(expand("%:t:r"))."_H") 
            call append(line(".")+10, "#define _".toupper(expand("%:t:r"))."_H") 
            call append(line(".")+11, "#endif //".toupper(expand("%:t:r"))."_H") 
            call append(line(".")+12, "#pragma once") 
        elseif &filetype == 'c' 
            call append(line(".")+9,"#include \"".expand("%:t:r").".h\"") 
        elseif &filetype == 'cpp' 
            call append(line(".")+9, "#include \"".expand("%:t:r").".h\"") 
         endif

    endif
endfunc

"新建文件后,自动定位到文件末尾
autocmd BufNewFile * normal G

" 语法高亮
if &t_Co > 1
     syntax enable
endif

" Tab键的宽度
set tabstop=4
" 自动缩进
set autoindent
set cindent
" 统一缩进为4
set softtabstop=4
set shiftwidth=4

" 显示行号
set number

" 高亮显示匹配的括号
set showmatch

4.5 安装输入法(放弃,安装qt与后续安装qt6有冲突风险)

Ubuntu20.04安装中文输入法

搜狗输入法

目前官方最新的搜狗输入法 for Linux v2.3.1.0112,使用的还是 qt4,依赖于 fcitx-frontend-qt4 等组件,然而在 Ubuntu 20.04 LTS 软件源中 qt4 已被移除,导致安装错误。

百度输入法

# 通过命令行安装aptitude
sudo apt-get install aptitude
# 通过命令行利用aptitude 安装fcitx、qt
sudo aptitude install fcitx-bin fcitx-table fcitx-config-gtk fcitx-config-gtk2 fcitx-frontend-all
sudo aptitude install qt5-default qtcreator qml-module-qtquick-controls2

请添加图片描述


请添加图片描述


请添加图片描述

4.6 安装编译工具

sudo apt install gcc
sudo apt install g++
sudo apt install make
sudo apt install cmake

4.7 安装ifconfig

sudo apt install net-tools

4.8 安装sshd

sudo apt install openssh-server
# 启动ssh服务命令
service sshd start 
# 重启SSH服务
service sshd restart
# 停止ssh服务命令
service sshd stop 
# 查看ssh服务22端口是否启动命令
netstat -antp | grep sshd
# 查看ssh服务进程命令
ps -ef|grep ssh
# 设置ssh服务为开机启动命令
chkconfig sshd on 
# 设置ssh服务禁止开机启动命令
chkconfig sshd off 

4.9 防火墙工具ufw

基于iptable之上的防火墙工具ufw,使用ufw配置防火墙规则远比iptable方便多了。

# 启动防火墙
sudo ufw enable
sudo ufw default deny
# 常用命令
sudo ufw allow smtp     允许所有的外部IP访问本机的25/tcp (smtp)端口
sudo ufw allow 22/tcp   允许所有的外部IP访问本机的22/tcp (ssh)端口
sudo ufw allow 53       允许外部访问53端口(tcp/udp)
sudo ufw allow from 192.168.1.100      允许此IP访问所有的本机端口
sudo ufw allow proto udp 192.168.0.1 port 53 to 192.168.0.2 port 53
sudo ufw deny smtp           禁止外部访问smtp服务
sudo ufw delete allow smtp   禁止smtp端口
sudo ufw delete allow 53     禁用53端口

4.10 安装git

sudo apt-get install git

4.11 安装nginx

Nginx 发音 “engine x” ,是一个开源软件,高性能 HTTP 和反向代理服务器,用来在互联网上处理一些大型网站。它可以被用作独立网站服务器,负载均衡,内容缓存和针对 HTTP 和非 HTTP 的反向代理服务器。
和 Apache相比,Nginx 可以处理大量的并发连接,并且每个连接占用一个很小的内存。

sudo apt install nginx
# 启动ngnix服务端口
sudo ufw allow 'Nginx Full'
# 查看状态
sudo ufw status
# 启动nginx服务
sudo /etc/init.d/nginx start
# 退出nginx服务
sudo /etc/init.d/nginx quit
# 立马停止nginx服务
sudo /etc/init.d/nginx stop
# 加载最新配置
sudo /etc/init.d/nginx reload

所有的 Nginx 配置文件都在​​/etc/nginx/​​目录下。
主要的 Nginx 配置文件是​​/etc/nginx/nginx.conf​​。

4.12 安装Qt

安装OpenGL库

注:安装系统时没有选择边安装边更新,此处会缺依赖库
sudo apt-get install build-essential
sudo apt-get install libgl1-mesa-dev
sudo apt-get install libglu1-mesa-dev
sudo apt-get install freeglut3-dev

安装Qt 6.3

下载预装包

在线安装,在哪里安装,在哪里打开网页,博主在虚拟机打开官网。
Download Qt | Develop Desktop & Embedded Systems | Qt

请添加图片描述


请添加图片描述


![请添加图片描述](https://img-blog.csdnimg.cn/7aaf43a1f84c41229fd4f86eac27e1ee.png

安装libxcb-xinerama0(如报错)

# 如下报错时
./qt-unified-linux-x64-4.4.1-online.run: error while loading shared libraries: libxcb-xinerama.so.0: cannot open shared object file: No such file or directory
# 重新安装libxcb-xinerama0即可
sudo apt install --reinstall libxcb-xinerama0

请添加图片描述

官网直接下载失败则跳过,通过nginx下载

直接从官网下载,容易emo。

请添加图片描述

通过nginx下载,安装nginx

sudo apt install nginx

修改nginx配置

如上安装nginx,然后修改配置文件/etc/nginx/nginx.conf

server_name  download.qt.io;
rewrite ^(.*)$ https://mirrors.tuna.tsinghua.edu.cn/qt$1 permanent;

请添加图片描述

开启nginx服务

# 启动nginx服务
sudo /etc/init.d/nginx start

修改/etc/hosts文件,增加如下内容

127.0.0.1 download.qt.io

刷新hosts文件

sudo /etc/init.d/network-manager restart

继续下载,选择组件

请添加图片描述


请添加图片描述

选择协议

选择最后一个LGPL协议(商业友好协议,做出来的软件满足条件可以闭源,可以收费)
安装包6.86G,有点猛啊。

关闭nginx

# 退出nginx服务
sudo /etc/init.d/nginx quit

修改/etc/hosts文件,删除如下内容

127.0.0.1 download.qt.io

刷新hosts文件

sudo /etc/init.d/network-manager restart

成功

请添加图片描述

参考

1、[linux–ubuntu sudo update与upgrade的作用及区别以及手动更改apt-get源](linux–ubuntu sudo update与upgrade的作用及区别以及手动更改apt-get源_worthsen的博客-CSDN博客)
2、linux–搭建工作环境
3、linux–vim进阶
4、linux–搭建工作环境_worthsen的博客-CSDN博客_linux工作环境
5、Qt6.0高速在线安装 下载极速无需漫长等待_space9bug的博客-CSDN博客_qt6下载

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


学习编程是顺着互联网的发展潮流,是一件好事。新手如何学习编程?其实不难,不过在学习编程之前你得先了解你的目的是什么?这个很重要,因为目的决定你的发展方向、决定你的发展速度。
IT行业是什么工作做什么?IT行业的工作有:产品策划类、页面设计类、前端与移动、开发与测试、营销推广类、数据运营类、运营维护类、游戏相关类等,根据不同的分类下面有细分了不同的岗位。
女生学Java好就业吗?女生适合学Java编程吗?目前有不少女生学习Java开发,但要结合自身的情况,先了解自己适不适合去学习Java,不要盲目的选择不适合自己的Java培训班进行学习。只要肯下功夫钻研,多看、多想、多练
Can’t connect to local MySQL server through socket \'/var/lib/mysql/mysql.sock问题 1.进入mysql路径
oracle基本命令 一、登录操作 1.管理员登录 # 管理员登录 sqlplus / as sysdba 2.普通用户登录
一、背景 因为项目中需要通北京网络,所以需要连vpn,但是服务器有时候会断掉,所以写个shell脚本每五分钟去判断是否连接,于是就有下面的shell脚本。
BETWEEN 操作符选取介于两个值之间的数据范围内的值。这些值可以是数值、文本或者日期。
假如你已经使用过苹果开发者中心上架app,你肯定知道在苹果开发者中心的web界面,无法直接提交ipa文件,而是需要使用第三方工具,将ipa文件上传到构建版本,开...
下面的 SQL 语句指定了两个别名,一个是 name 列的别名,一个是 country 列的别名。**提示:**如果列名称包含空格,要求使用双引号或方括号:
在使用H5混合开发的app打包后,需要将ipa文件上传到appstore进行发布,就需要去苹果开发者中心进行发布。​
+----+--------------+---------------------------+-------+---------+
数组的声明并不是声明一个个单独的变量,比如 number0、number1、...、number99,而是声明一个数组变量,比如 numbers,然后使用 nu...
第一步:到appuploader官网下载辅助工具和iCloud驱动,使用前面创建的AppID登录。
如需删除表中的列,请使用下面的语法(请注意,某些数据库系统不允许这种在数据库表中删除列的方式):
前不久在制作win11pe,制作了一版,1.26GB,太大了,不满意,想再裁剪下,发现这次dism mount正常,commit或discard巨慢,以前都很快...
赛门铁克各个版本概览:https://knowledge.broadcom.com/external/article?legacyId=tech163829
实测Python 3.6.6用pip 21.3.1,再高就报错了,Python 3.10.7用pip 22.3.1是可以的
Broadcom Corporation (博通公司,股票代号AVGO)是全球领先的有线和无线通信半导体公司。其产品实现向家庭、 办公室和移动环境以及在这些环境...
发现个问题,server2016上安装了c4d这些版本,低版本的正常显示窗格,但红色圈出的高版本c4d打开后不显示窗格,
TAT:https://cloud.tencent.com/document/product/1340