- 博客(30)
- 问答 (1)
- 收藏
- 关注
原创 /proc/{pid}/stat 文件说明
在 Linux 系统中,/proc是一个虚拟文件系统,它提供了大量关于系统和正在运行的进程的信息。是其中一个文件,它提供了关于指定进程 ID(PID)的详细状态信息。
2024-01-26 14:56:05 1324
原创 nginx 交叉编译
准备软件包如下,放在同级目录.├── nginx-1.18.0├── openssl-1.1.1f├── pcre-8.45└── zlib-1.2.11准备工作进入 nginx-1.18.0 目录编写 build.sh 脚本如下:#!/bin/sh# 脚本放在 nginx-1.18.0 目录BUILD_PATH=$(pwd)CROSS_CC=${你的编译器目录}/arm-buildroot-linux-gnueabi-ZLIB_PATH=${BUILD_PATH}/
2022-05-31 10:57:38 468 1
原创 nginx 交叉编译
环境:Linux CentOS6.9 2.6.32-696.el6.x86_64软件版本:nginx http://nginx.org/download/nginx-1.18.0.tar.gz openssl https://www.openssl.org/source/old/1.1.1/openssl-1.1.1f.tar.gz zlib https://codeload.github.com/madler/zlib/tar.gz/refs/tags/v1.2.11
2022-05-30 18:52:02 3833 3
原创 printf 彩色输出
printf 彩色输出需要用到控制命令:\033[A1;A2;A3m命令说明:开头:\033[属性代码:A1前景色:A2背景色:A3结束符:m
2022-05-27 15:12:04 1661
原创 制作 Linux 根文件系统镜像
运行环境系统版本 Ubuntu 22.04 LTS 内核版本 5.15.0-25-generic GCC版本 gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0 源码下载需要准备 Linux 内核源码和 busybox 源码内核源码下载地址(我选择的是 linux-5.17.4) https://kernel.org/ 官网 https://mirrors.aliyun.com/linux-k
2022-04-24 11:49:01 1108
原创 C 清空一个已经打开的文件
记录 2 个 C 函数,这2个函数是用来截断一个文件的int truncate(const char *path, off_t length);int ftruncate(int fd, off_t length);truncate:/**path : 文件路径length : 截断的长度,设为 0 则可以清空文件。 若 length 大于文件大小,则文件被扩充,扩充部分用 '\0' 填充**/int truncate(const char *path, of
2022-02-15 13:38:00 1273
原创 openwrt 使用自定义 DNS
记录一下在 openwrt 设置自定义 DNS 的命令uci set network.{interface_name}.peerdns = 0 // 是否使用上行DHCP 或者 PPPOE分配的DNS,这个参数默认值是 1。不建议改这个值。uci add_listnetwork.{interface_name}.dns="8.8.8.8" // 添加 DNS。openwrt 会优先使用这个参数设置的 DNSuci commit network // 保存ubus call network..
2021-11-29 15:59:11 5066
原创 Openssl 对称加解密函数 - EVP_Cipher、EVP_Encrypt、EVP_Decryp 系列
实验环境:openssl 1.1.1kEVP_CipherInit_ex()、EVP_CipherUpdate() 和 EVP_CipherFinal_ex() 是可用于解密或加密的函数。执行的操作取决于enc参数的值。加密时应设置为 1,解密时设置为 0,保持值不变为 -1。// 创建密码上下文EVP_CIPHER_CTX *EVP_CIPHER_CTX_new(void);// 清除密码上下文中的所有信息并释放与其关联的任何已分配内存,包括ctx本身。// 应在使用密码的所有操.
2021-08-31 10:38:41 10606
原创 使用 openssl 进行 https 请求的步骤
使用 openssl 进行 https 请求的步骤如下:1、创建SSL_CTXSSL_CTX_new(SSLv23_method())2、创建SSLSSL_new([SSL_CTX])3、绑定 socketSSL_set_fd([SSL], [socket])4、建立连接SSL_connect([SSL])5、发送数据SSL_write([SSL],request,request_...
2021-08-30 09:49:42 2086
原创 使用 openssl 进行 base64 编解码
使用 openssl 进行 base64 编解码BASE64编码介绍BASE64编码是一种常用的将十六进制数据转换为可见字符的编码。与ASCII码相比,它占用的空间较小。BASE64编解码原理将数据编码成BASE64编码时,以3字节数据为一组,转换为24bit的二进制数,将24bit的二进制数分成四组,每组6bit。对于每一组,得到一个数字:0-63。然后根据这个数字查表即得到结果。表如下:比如有数据:0x30 0x82 0x02 编码过程如下:...
2021-08-27 18:16:03 7555 5
原创 WSL 环境安装 Ubuntu 16.04
目前微软应用商店已经搜索不到 Ubuntu 16.04,但是我们又想用 Ubuntu 16.04,该怎么办呢?安装虚拟机是一个不错的选择,但是终归没有WSL方便。下面介绍WSL 环境 2 种安装 Ubuntu 16.04 的方法。### 第一种:完全手动安装 微软官方教程:手动下载适用于 Linux 的 Windows 子系统发行版包### 第二种:商店安装 Ubuntu 16.04 商店地址:Ubuntu 16.04 进入后选择英文界面(如...
2021-08-23 17:08:14 2161
原创 cmake 使用(八)
本文是 cmake 使用的第八篇,主要介绍如何使用 cmake 导入已经编译好的第三方库。上一篇的链接为:https://blog.csdn.net/QCZL_CC/article/details/119826435,主要介绍如何设置编译标志,以便于在代码中使用预编译宏。目录结构如下:qczl@DESKTOP-HP-ZHAN:~$ tree httpToolhttpTool├── CMakeLists.txt├── cJSON│ ├── cJSON.c│ └── cJSO...
2021-08-20 17:10:10 195
原创 cmake 使用(七)
本文是 cmake 使用的第八篇,主要介绍如何设置编译标志,以便于在代码中使用预编译宏。上一篇的链接为:https://blog.csdn.net/QCZL_CC/article/details/119825969目录结构如下:06-compile-flags/├── CMakeLists.txt└── main.c其中 main.c 内容如下:#include <stdio.h>#include <string.h>int main(int a
2021-08-20 16:39:30 2441
原创 cmake 使用(六)
本文是 cmake 使用的第六篇。主要介绍如何设置编译器优化标志。上一篇的链接为:https://blog.csdn.net/QCZL_CC/article/details/119825737目录结构如下:05-build-type/├── CMakeLists.txt└── main.cCMakeLists.txt 规则如下:cmake_minimum_required(VERSION 3.5)# CMake 提供的默认构建类型不包含用于优化的编译器标志。# 对于某些
2021-08-20 16:19:24 3030
原创 cmake 使用(五)
本文是 cmake 使用的第五篇,主要介绍如何将自己的软件安装到系统中。上一篇的链接为:https://blog.csdn.net/QCZL_CC/article/details/119825506目录结构如下:04-installing/├── CMakeLists.txt├── cmake-examples.conf├── include│ └── installing│ └── hello.h└── src ├── hello.c └── ...
2021-08-20 16:02:29 258
原创 cmake 使用(四)
本文是 cmake 使用的第四篇,主要介绍如何创建一个动态库并引用。上一篇的链接为:https://blog.csdn.net/QCZL_CC/article/details/119825333目录结构如下:03-hello-shared-library/├── CMakeLists.txt├── include│ └── shared│ └── hello.h└── src ├── hello.c └── main.c将使用include/...
2021-08-20 15:56:48 174
原创 cmake 使用(三)
本文是 cmake 使用的第三篇,主要介绍如何创建一个静态库并引用上一篇的链接为:https://blog.csdn.net/QCZL_CC/article/details/119825103示例目录结构如下:02-static-library/├── CMakeLists.txt├── include│ └── static│ └── hello.h└── src ├── hello.c └── main.c将使用02-static-libra...
2021-08-20 15:50:19 211
原创 cmake 使用(二)
本文是 cmake 使用的第二篇,主要介绍如何包含头文件。第一篇的地址为:https://blog.csdn.net/QCZL_CC/article/details/119824696示例的目录结构如下:01-hello-headers/├── CMakeLists.txt├── include│ └── hello.h└── src ├── hello.c └── main.cCMakeLists.txt 内容如下:# cmake 最低版本号cmake..
2021-08-20 15:45:08 189
原创 cmake 使用(一)
CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。只是 CMake 的组态档取名为 CMakeLists.txt。Cmake 并不直接建构出最终的软件,而是产生标准的建构档(如 Unix 的 Makefile 或 Windows Visual C++ 的 projects/workspaces),然后再依一般的建构方式使用。...
2021-08-20 15:38:17 196
原创 automake 的使用(一)
我的实验环境如下:1:autoconf (GNU Autoconf) 2.692:automake (GNU automake) 1.16.1首先创建一个工程目录,并写一个测试程序,如下所示:qczl@DESKTOP-HP-ZHAN:automake$ lsmain.cqczl@DESKTOP-HP-ZHAN:automake$ cat main.c#include <stdio.h>#include <string.h>...
2021-08-19 10:21:11 633
原创 爬取 ZOL 壁纸
代码写于#!/usr/bin/env python3# -*- coding: utf-8 -*-# 开发时间 : 2021/6/2 15:02# 文件名称 : zolWallpaper.py# 开发工具 : PyCharmimport osimport requestsimport urllib.errorimport urllib.requestfrom bs4 import BeautifulSoupdef get_html(url): he..
2021-06-02 16:07:57 202
原创 libmodbus 开源库(第一部分)
下载地址libmodbus 开源库地址:https://github.com/stephane/libmodbus编译方式安装必要的软件 sudo apt-get installpkg-configautoconf automake编译 libmodbus ./autogen.sh &&./configure --prefix=/usr && && make && sudo make install测试代码...
2021-04-30 17:56:35 3101 3
原创 【Django web 框架】Django web 框架初学
Django web 框架的安装使用pip安装 pip install django==2.0 使用virtualenv安装 (venv) pip install django=-1.11.2 使用anaconda安装 conda install django 创建项目创建项目 django-admin startproject demo 运行程序 python manage.py runserver 数据迁移 pyth...
2021-04-12 16:07:59 87
原创 Linux 获取网卡流量
#define _GNU_SOURCE /* To get defns of NI_MAXSERV and NI_MAXHOST */#include <arpa/inet.h>#include <sys/socket.h>#include <netdb.h>#include <ifaddrs.h>#include <...
2019-10-11 10:45:00 361 1
原创 libusb 和 usbutils 的交叉编译
libusb 下载地址:https://sourceforge.net/projects/libusb/usbutils 下载地址:https://mirrors.edge.kernel.org/pub/linux/utils/usb/usbutils/我使用的是libusb-1.0.22 和usbutils-005libusb 交叉编译:./configure CC...
2019-06-12 11:29:17 1702
原创 goahead-4.0.2
源码下载 goahead源码 git clone http://github.com/embedthis/goahead https://www.embedthis.com/goahead/ Makeme源码 git clone https://github.com/embedthis/makeme.g...
2018-07-20 11:48:46 1798
空空如也
cmake 中链接第三方库(openssl)后运行报错
2021-08-20
TA创建的收藏夹 TA关注的收藏夹
TA关注的人