C
文章平均质量分 76
Cliven_
这个作者很懒,什么都没留下…
展开
-
gcc 可执行文件 相对路径动态库
问题描述目录结构如下:编译build.sh脚本为:gcc main.c -L. -ltlcpsocket -o main编译后运行可执行程序main,提示找不到动态链接库默认情况下Linux系统到/lib或 /lib64下寻找链接库,如果连接库在这两个地方没有那么就会出现这个问题,即便我们的动态链接库与可执行程序位于同一个目录内。我们使用gcc的-L参数指定了编译时的连接库所在目录位置,因此程序可以顺利编译。在运行时,程序启动时需要加载动态链接库,上述问题就是在运行时找不到链接库导致原创 2022-05-16 15:22:43 · 1348 阅读 · 0 评论 -
树莓派 Pico ADC温度测量
1.1 工作原理1.2 ADC基础原理介绍树莓派Pico内置5个ADC引脚,其中4引脚接入了内置的温度传感器。ADC(analogue-digital converter) 也即模拟数字转换器,也就是把模拟信号转换为数字信号。RP2040芯片上搭载的ADC能够支持12比特的数模转换: 000~2122^{12}212RP2040工作电压范围为: 0~3.3V。可以得到电压与ADC采集参数的换算关系如下:factor=3.3212factor = \frac {3.3}{ 2^{12}}原创 2022-05-06 21:47:49 · 3057 阅读 · 0 评论 -
UOS20 Qt5 系统状态图标Demo
1. 开发环境搭建系统:UOS20处理器架构:X86_64由于Qt和DTK支持跨平台,处理器架构均可以兼容,只需要把同样的代码在不同环境下进行编译即可。首先UOS20进入开发者环境sudo apt updatesudo apt-get install qtcreator qt5-default build-essential安装内容包括:Qt开发环境(头文件、动态库、Qmake等)Qt IDEgcc、g++、make、gdb…检验Qtqmake --version原创 2022-05-06 09:11:30 · 566 阅读 · 0 评论 -
树莓派 Pico Pi USB串口通信
Main程序循环向UART串口打印 Hello World程序如下:#include <stdio.h>#include "pico/stdlib.h"int main() { stdio_init_all(); while (true) { printf("Hello, world!\n"); sleep_ms(1000); }}默认PICO stdio是 输出到UART0,也就是 PIN 1、PIN 2为了使用 US原创 2022-04-04 23:01:10 · 9470 阅读 · 5 评论 -
树莓派 Pico Clion开发
准备交叉编译工具链 ARM GNU:下载页面GNU工具链包括了 LD、GCC、G++等交叉编译连接工具下载完成后下一步下一步安装就可以,注意一下安装路径。树莓派Pico SDK下载: Pico SDK github项目首页下载后解压,例如我的解压目录为D:\pico\pico-sdkMinGW工具链(含Cmake、Make、GDB)在2021版本的Clion中默认已经安装,不需要我们再安装配置。编译连接环境设置创建C项目创建新的编译工具链命名一下新的工具链名称,我这原创 2022-04-04 12:42:53 · 2644 阅读 · 0 评论 -
Ubuntu 托盘程序 开发
GTK3开发环境安装:sudo apt-get install libgtk-3-dev托盘图标开发包安装:sudo apt-get install -y libappindicator3-dev程序编译sudo gcc `pkg-config --cflags gtk+-3.0` hello.c -o hello `pkg-config --libs gtk+-3.0`普通用户编译可能会造成 (.text+0x18):对‘main’未定义的引用 错误sudo gcc `pkg-co原创 2022-03-11 21:58:54 · 2675 阅读 · 0 评论 -
Cmake Windows 启动隐藏Console
使用Cmake 编译如下程序int main(){ for(;;){} return 0;}CMakeLists.txt 如下:cmake_minimum_required(VERSION 3.21)project(CTray C)set(CMAKE_C_STANDARD 99)add_executable(CTray main.c)编译运行后会弹出Console窗口,隐藏修改调整 Cmake文件:过在 add_executable 增加 WIN32增加连接参数-mwind原创 2022-02-24 20:30:13 · 1578 阅读 · 0 评论 -
C Socket Connect 超时设置
Windows 使用 ws2_32.dllWinsock C++ connect timeoutLinux 使用socket相关APIC: socket connection timeout参考文献[1]. stackoverflow . Winsock C++ connect timeout . 2017.09 . https://stackoverflow.com/questions/46045434/winsock-c-connect-timeout[2]. stackoverf原创 2022-02-17 10:25:47 · 2134 阅读 · 0 评论 -
C程序 性能分析
编译配置分析使用gprof 进行分析以CMAKE项目为例首先配置CMakeLists.txt,编译时增加-pg参数SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pg")SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pg")SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pg")SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_L原创 2022-01-12 16:28:18 · 698 阅读 · 0 评论 -
CLion断点无效
在设置中配置CMake的 构建类型Build type设置为 DEBUG再次运行断点就生效了,该参数会向CMake 添加CMAKE_BUILD_TYPE=Debug参数,当然可以直接在CMakeLists.txt配置文件中手动设置该参数SET(CMAKE_BUILD_TYPE Debug)参考文献[1]. CSDN . insanegtp . CLION CMAKE 缺-g 导致断点不执行(无效) . 2019.12 https://blog.csdn.net/insanegtp/art原创 2021-12-23 11:54:01 · 4348 阅读 · 0 评论 -
CLion程序编译错误 0xC0000135
问题描述CLion使用Cmake 进行项目代码管理和编译控制。程序引用动态库,后编译出现错误Process finished with exit code -1073741515 (0xC0000135)项目目录如下:CMakeLists.txt 文件内容如下:cmake_minimum_required(VERSION 3.20)project(gogmssl C)set(CMAKE_C_STANDARD 99)LINK_DIRECTORIES(lib)include_dire原创 2021-11-18 23:01:28 · 7533 阅读 · 1 评论 -
Windows CLion 远程Linux服务器 开发调试
适合于在Windows 开发Linux的C/C++程序。Linux 配置为了使用CLion 进行开发调试Linux相关的软件版本推荐如下Cmake 3.x 以上gdb 7.8.x 以上本次配置使用的Linux 版本为Centos 7.4 mini首先卸载预装Cmake 2yum remove cmake首先安装必要的环境yum install -y gcc g++ gcc-...原创 2019-02-19 20:24:43 · 16899 阅读 · 6 评论