自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

IOT物联网小镇

专注于:Linux 操作系统、物联网等领域的嵌入式开发。

  • 博客(5)
  • 资源 (12)
  • 收藏
  • 关注

原创 Linux系统中编译、链接的基石-ELF文件:扒开它的层层外衣,从字节码的粒度来探索

初次见面大家好,我是 ELF 文件,大名叫 Executable and Linkable Format。经常在 Linux 系统中开发的小伙伴们,对于我肯定是再熟悉不过了,特别是那些需要了解编译、链接的家伙们,估计已经把我研究的透透的。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eqQKroRf-1622162986560)(http://iottown.sewain100.cn/iot523_fun_look.png)]为了结识更多的小伙伴,今天呢,就是..

2021-05-28 08:51:28 982

原创 应用程序设计:在动态库中如何调用外部函数?

大家好,我是一个动态链接库!这个名字,相信你一定早就如雷贯耳了。在计算机早期时代,由于内存资源紧张,我可是发挥了重大的作用!不论是在 Windows 系统中,还是在 Unix 系列平台上,到处都能见到我的身影,因为我能为大家节省很多资源啊,资源就是人民币!愉快的玩耍比如:我的主人编写了这么一段简单的代码:# 文件:lib.c#include <stdio.h>int func_in_lib(int k){ printf("func_in_lib is ca

2021-05-22 10:12:42 1010

原创 向高手学习:glib如何来封装跨平台的线程库

文章目录一、前言二、glib 简介三、线程库的设计1. 线程相关的文件2. 数据结构3. 线程的创建4. 线程的执行5. Windows平台函数调用链四、总结一、前言这篇文章,按照下面这 2 张图,来描述 glib 在 Linux 和 Windows 平台上,是如何来进行线程库的设计的。Linux 平台:Windows 平台:最近写了几篇关于跨平台的应用程序设计思路,有些小伙伴在后台留言询问关于一些通用的跨平台库,看来这方面的需求还是很多的。所谓的跨平台,无非就是希望用同一份应用程序的代码,

2021-05-14 08:30:11 1041 1

原创 使用 cmake 来搭建跨平台的应用程序框架:C++版本

文章目录一、前言二、示例代码说明1. 功能描述2. 文件结构三、Linux 系统下操作1. 通过 cmake 指令,生成 Makefile 文件2. 编译 libA3. 编译 libB4. 编译可执行程序 appC四、Windows 系统下操作1. 生成 VS 解决方案2. 编译 libA3. 编译 libB4. 编译 appC五、总结一、前言在上一篇文章中(使用 cmake 来搭建跨平台的应用程序框架:C语言版本),我们以源代码的形式,演示了利用利用 cmake 这个构建工具,来编译跨平台的动态库、静

2021-05-11 14:35:30 1258 5

原创 使用 cmake 来搭建跨平台的应用程序框架:C语言版本

文章目录一、前言二、示例代码说明1. 功能描述2. 文件结构3. cmake 构建步骤4. Utils 目录说明5. Application 目录说明三、Linux 系统下操作步骤1. 创建构建目录 build2. 执行 cmake,生成 Makefile3. 编译 Utils 库4. 编译可执行程序 Application四、Widnows 系统下操作步骤1. 通过 cmake 指令生成 VS 工程2. 编译 Utils 库文件3. 编译可执行程序 Application五、总结一、前言我们在写应用

2021-05-11 14:34:44 1181 11

Stunnix-CXX-Obfus-4.7-Linux-trial.zip

这是用于C/C++源代码级别的混淆工具,不是二进制混淆。官网的下载特别特别慢,因此在这里提供一下,给需要的开发者。

2020-03-10

Git2.25.0.1.zip

Git2.25.0.1.zip是在 windows系统中使用的版本管控工具,在我们的开发过程中大部分是使用这个工具进行代码版本的管控。但是官网下载的速度太慢,所以在这里提供一下。

2020-02-04

cmake-3.15.6-win64-x64.msi

cmake-3.15.6-win64-x64.msi 是在windows下进行开发时大部分需要的构建工具,但是官网下载的太慢太慢,所以在这里提供一下,确认可用。

2020-02-04

CppPluginSample1.tgz

1. 实现原理。 因为工作需要使用C++插件的开发形式,于是调研了目前的实现方式和思路,本质上就是在一个插件管理模块,使用容器(map)存储所有注册的插件名称和构造函数。 注册的过程可以使用代码,也可以使用XML配置的方式。在应用程序需要某个插件对象的时候,直接通过传递插件的名称作为参数,从插件管理模块中获取一个创建好的插件对象。 2. 实例代码 我一共写了2个demo,这一个是按照上面的思路实现的,比较简单、基础。解压后,直接在命令行使用 make 一下就可以得到可执行文件。 另外一个demo过会再上传,本质原理是一样,但是没有使用插件管理模块,而是在每一个插件接口中,使用静态成员容器来保存实现了本接口的所有插件信息,当应用程序需要插件时,调用该插件实现的接口中的静态函数即可。

2019-09-20

ZWave实战入门-完全自己总结整理的基本知识

这是我自己在刚入门ZWAVE设备开发时,自己总结的文档,包括了ZWAVE最基本的知识。

2019-04-04

ZWave 700 系列 Z-Wave Roadmap 700 Series - Asia Forum_B2B_V3.pdf

这个PDF描述了在ZWave 700系列的产品的一些基本情况,已经路线图,很有参考价值。

2019-04-03

iOS开发指南:从零基础到App Store上架-第2章

iOS开发指南:从零基础到App Store上架 第2章 由于全新问题,只能分开传。

2014-09-14

iOS开发指南:从零基础到App Store上架-第一章

iOS开发指南:从零基础到App Store上架 第一章 由于权限问题,只能分开上传。

2014-09-14

在虚拟机中直接使用liveCD

在练习LFS的过程中,对各种依赖的版本需求和宿主机的版本要求,相关性是很大的。这里提供一个有效的步骤去使用兼容的虚拟机,将会大大提高LFS的创建流程。

2014-07-15

DL-LFS开始之前.txt

在练习LFS时,很多朋友遇到一些版本兼容的问题,而且这些问题是最能打击新手的自信心的,在开始LFS之前,了解一些相关的必要知识,将会避免很多问题。

2014-07-15

LFS-BOOK-6.3.pdf

非常详细、非常接底气的LFS参考资料,按照里面的提示流程走一遍,将会大大增强自己对linux操作系统的理解。

2014-07-15

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除