linux+c+qt杂记

虚拟机网络选择;

**桥接模式:**设置window宿主机的IP/dns,把虚拟机设置为桥接即可。

切换到终端:我的是 ctrl+alt+Fn+F1?

问题解决:

Ubuntu系统下载(清华大学开源软件镜像站)(ubuntu-20.04.1-desktop-amd64.iso)

手把手安装VirtualBox增强工具&进行相关配置

为VirtualBox下Linux-Ubuntu虚拟机增加虚拟硬盘容量(傻瓜化操作,全程UI下完成)

VMware Ubuntu使用gparted工具扩容,显示Unable to resize read-only file system

VirtualBox扩容失败-Progress state: VBOX_E_NOT_SUPPORTED Resizing to new size 16231956480 is not yet

GParted给ubuntu系统磁盘resize大小时候出现cannot resize read-only file system解决办法

为VirtualBox下Linux-Ubuntu虚拟机增加虚拟硬盘容量(傻瓜化操作,全程UI下完成)

// vb_share:是上一步设置的文件夹名称;share:是虚拟机里面创建的共享文件夹名称 sudo mount -t vboxsf vb_share share

最新】用VirtualBox安装Ubuntu,启动后黑屏的解决办法【更新时间2020年11月4日】

Ubuntu更改镜像源两种方式

Ubuntu 软件仓库镜像使用帮助

Qt在ubuntu下的几种安装方式

不建议图像界面更改

如何激活Ubuntu的root帐号

激活root

如何在 Ubuntu 20.04 上安装 GCC(build-essential)

静态库

动态库

在Ubuntu 20上安装GTK+的步骤如下:

  1. 打开终端,可以使用Ctrl+Alt+T快捷键组合打开终端。

  2. 输入以下命令安装GTK+开发环境所需的基本工具和库:

复制代码

bash复制代码

|---|----------------------------------------|
| | sudo apt-get install build-essential |

  1. 输入以下命令安装libgtk2.0-dev和libglib2.0-dev等开发相关的库文件:
复制代码

bash复制代码

|---|-----------------------------------------------------|
| | sudo apt-get install libgtk2.0-dev libglib2.0-dev |

  1. 输入以下命令安装pkg-config,用于在编译GTK程序时自动找出头文件及库文件位置:
复制代码

bash复制代码

|---|-----------------------------------|
| | sudo apt-get install pkg-config |

  1. 输入以下命令安装devhelp,用于查看GTK文档:
复制代码

bash复制代码

|---|--------------------------------|
| | sudo apt-get install devhelp |

  1. 输入以下命令安装libglib2.0-doc和libgtk2.0-doc,这些是gtk和glib的API参考手册及其它帮助文档:
复制代码

bash复制代码

|---|-----------------------------------------------------|
| | sudo apt-get install libglib2.0-doc libgtk2.0-doc |

  1. 输入以下命令安装glade,用于GTK+的界面设计:
复制代码

bash复制代码

|---|--------------------------------------------|
| | sudo apt-get install glade libglade2-dev |

或者可以使用以下命令安装Glade的Gnome版本:

复制代码

bash复制代码

|---|-----------------------------------------------------------|
| | sudo apt-get install glade-gnome glade-common glade-doc |

  1. 最后,输入以下命令安装gtk2.0或gtk+2.0,具体命令取决于您要安装的版本:
复制代码

bash复制代码

|---|-----------------------------------|
| | sudo apt-get install libgtk2.0* |

完成上述步骤后,您应该已经在Ubuntu 20上成功安装了GTK+开发环境。

第一步:赋予.run文件的可执行权限(即x)

r:读

w:写

x:执行

上面三者对应的值分别为4,2,1。因此赋予.run文件可执行权限可用命令:

sudo chmod 775 ****.run

第二步:安装

这一步在文件的根目录下执行命令:

./文件的名字.run

执行后就会弹出软件安装的提示,按照提示进行安装即可。

第三步:运行软件

安装之后会在桌面生成一个.desktop的文件,点击这个文件,会弹出一个提示框,点击"信任"即可。这时软件就能成功打开。

c语言: 如何理解预处理

C 程序主要包括以下部分:

  • 预处理器指令(如何讲预处理?)
  • 函数
  • 变量
  • 语句 & 表达式
  • 注释

C语言关键字 保留字

实际工作开发中C语言工程的目录结构分析

C语言目录结构:

	./Trunk/
	├── bin	
	├── build
	│   ├── Makefile
	├── lib
	├── docs
	├── include
	│   ├── inner
	│   ├── xxx1
	│   └── xxx2
	├── patch
	├── src
	├── test
	└── tool

数据类型:隐式转换 显示转换 三大数据结构

函数定义在一定程度上有函数原型声明的作用,当函数定义在后,而调用在前时则必须要在调用语句之前声明该函数。若调用该函数在定义之后则可以不用单独给出声明。

gcc编译程序的过程

gcc编译程序主要经过四个过程:

  • 预处理(Pre-Processing)
  • 编译 (Compiling)
  • 汇编 (Assembling)
  • 链接 (Linking)

预处理实际上是将头文件、宏进行展开。编译阶段,gcc调用不同语言的编译器,例如c语言调用编译器ccl。gcc实际上是个工具链,在编译程序的过程中调用不同的工具。汇编阶段,gcc调用汇编器进行汇编。链接过程会将程序所需要的目标文件进行链接成可执行文件。汇编器生成的是可重定位的目标文件,学过操作系统,我们知道,在源程序中地址是从0开始的,这是一个相对地址,而程序真正在内存中运行时的地址肯定不是从0开始的,而且在编写源代码的时候也不能知道程序的绝对地址,所以重定位能够将源代码的代码、变量等定位为内存具体地址。下面以一张图来表示这个过程,注意过程中文件的后缀变化,编译选项和这些后缀有关。

linux文件体系:略

linux 命令分类及常用命令

Linux Ubuntu 入门基本命令整理

GUN是一个关于linux的标准。 一切有关linux的开发得符合GUN的规定。 GNU工程已经开发了一个被称为"GNU"(GNU是"不是UNIX"的缩写)的、对Unix向上兼容的完整的自由软件系统 (free software system)。

command line interface,CLI

目录与文件

Linux PC上安装的第 一块硬盘称为根驱动器。根驱动器包含了虚拟目录的核心,其他目录都是从那里开始构建的

Linux会在根驱动器上创建一些特别的目录,我们称之为挂载点(mount point)。挂载点是虚 拟目录中用于分配额外存储设备的目录。虚拟目录会让文件和目录出现在这些挂载点目录中,然 而实际上它们却存储在另外一个驱动器中。

图3-2展示了计算机中的两块硬盘。一块硬盘和虚拟目录的根目录(由正斜线/表示)关联起 来。剩下的硬盘就可以挂载到虚拟目录结构中的任何地方。在这个例子中,第二块硬盘被挂载到 了/home位置,用户目录都位于这个位置。

在登录系统并获得一个shell CLI提示符后,会话将从主目录开始。主目录是分配给用户账户 的一个特有目录。用户账户在创建之后,系统通常会为其分配一个特有的目录?

在切换到新的当前工作目录时使用pwd命令,是很好的习惯。因为很多shell命令都是在当 前工作目录中操作的,在发出命令之前,你应该始终确保自己处在正确的目录之中。

创建符号链接ln -s data_file sl_data_file

文件与目录管理:无非是创建、改名字、移动、删除、查看、编辑

文件创建:touch mv rm、cat

目录:mkdir

查看:cat/more/less

进程前后台切换?

在Linux中,进程的前后台主要涉及到的是进程的执行方式和调度优先级。

前台进程:当你在终端运行一个程序时,这个程序通常会成为一个前台进程。这意味着这个进程会占用你的终端,你可以看到它的输出和输入。例如,如果你正在使用一个文本编辑器来编写文章,那么这个编辑器程序就会是一个前台进程。

后台进程 :后台进程通常是在前台进程执行时同时启动的,但是它们并不占用终端。它们通常在后台执行一些任务,例如下载文件、备份数据、扫描病毒等。这些进程不会阻止你使用终端进行其他操作。你可以通过在命令后面加上 & 符号来将进程放到后台执行,例如:./my_script.sh &

在Linux中,前台进程的优先级通常比后台进程高。这意味着如果系统需要终止进程以释放资源,那么前台进程会优先被终止。此外,如果你的终端被关闭,那么所有在前台的进程也会被终止。

需要注意的是,前台和后台并不是一成不变的。你可以通过在终端中使用 fg 命令将后台进程切换到前台,反之亦然。例如,如果你想知道正在运行的后台进程的PID,可以使用 ps 命令来查看,然后通过 bgfg 命令来控制其前台和后台切换。

mount 即是把物理存储设备和逻辑目录系统联系上

linux 文件系统的类型

useradd

离线安装docker

在线安装docker

安装mysql:

sudo apt-get install mysql-server

sudo apt-get install mysql-client

sudo apt-get install libmysqlclient-dev

相关推荐
Yawesh_best23 分钟前
思源笔记轻松连接本地Ollama大语言模型,开启AI写作新体验!
笔记·语言模型·ai写作
CXDNW2 小时前
【网络面试篇】HTTP(2)(笔记)——http、https、http1.1、http2.0
网络·笔记·http·面试·https·http2.0
使者大牙2 小时前
【大语言模型学习笔记】第一篇:LLM大规模语言模型介绍
笔记·学习·语言模型
ssf-yasuo2 小时前
SPIRE: Semantic Prompt-Driven Image Restoration 论文阅读笔记
论文阅读·笔记·prompt
ajsbxi2 小时前
苍穹外卖学习记录
java·笔记·后端·学习·nginx·spring·servlet
TeYiToKu3 小时前
笔记整理—linux驱动开发部分(9)framebuffer驱动框架
linux·c语言·arm开发·驱动开发·笔记·嵌入式硬件·arm
dsywws3 小时前
Linux学习笔记之时间日期和查找和解压缩指令
linux·笔记·学习
cuisidong19974 小时前
5G学习笔记三之物理层、数据链路层、RRC层协议
笔记·学习·5g
乌恩大侠4 小时前
5G周边知识笔记
笔记·5g
咔叽布吉6 小时前
【论文阅读笔记】CamoFormer: Masked Separable Attention for Camouflaged Object Detection
论文阅读·笔记·目标检测