explorer

万丈高楼平地起,勿在浮沙筑高台

0%

《《算法图解》》这本书是 数据结构及算法 类的入门读物,由于我并非科班出身,还是以此基础再慢慢过渡到 严书 吧。

阅读全文 »

perf 是Linux(2.6+)内置的强大的分析工具,所以其既可以用于PC也可以用于嵌入式Linux。

阅读全文 »

LEP(Linux Easy Profiling)项目是 宋宝华老师团队 开发的可以通过网页图形化展示linux系统的全局视图, 可以运行在X86-64的PC机以及ARM内核的的开发板上,简直是神器!

阅读全文 »

构建之法 中讲到:

一个软件由一个人单枪匹马完成,已经很少见了...合作的最小单位是两个人...

大公司就是不一样……

阅读全文 »

在进行嵌入式linux调试时,经常会需要将代码在主机上交叉编译后再发送到目标板上。

当有网络的情况下, 通常是使用 tftp 来收发文件, 但当没有网络时, 则可以使用 lrzsz 来完成.

阅读全文 »

此文用于总结在使用GDB的过程中GDB本身所遇到的一些问题。

Python Exception <type 'exceptions.NameError'> Installation error: gdb.execute_unwinders function is missing:

在调试代码的过程中出现此错误,是由于 GDB 缺少 python 组件而导致调试错误,解决步骤如下。

阅读全文 »

list 命令是对变量进行列表操作,类似于链表。 需要注意的是:

  1. 列表内部的变量使用 ; 做分隔
  2. 列表所作用的变量值 仅仅在当前范围有效,即使列表是在父范围中定义的!
  3. 列表索引从 0 开始代表第一个, -1 代表最后一个,-0 和 0 意义一样
阅读全文 »

cmake 构建系统

cmake 构建系统指的是用于生成最终目标的系统,目标的可能是:

  1. 可执行文件
  2. 用户定义的命令集合
阅读全文 »

message 命令用于向用户显示消息

基本格式为:

message([<mode>] "message to display" ...)
阅读全文 »

变量

变量在 cmake 中是一个最基本的存储单位。cmake 中也提供了默认变量 具有特殊意义。

格式

  • 变量名一般以大写或小写单词组成(大小写敏感),单词和单词之间通过下划线连接。
  • 变量的值一般是字符串或者数字
  • 引用变量的内容使用 ${var_name} 的方式,这点和linux下一致
    • 变量嵌套引用: ${outer_${inner_var}_variable}
    • 在字符串中引用: MESSAGE(STATUS "the value of variable is ${VAR_NAME}")
  • 设置变量最常用的命令有: set, unset , 以及在启动cmake时使用:
cmake -D<val>=<value> ../
阅读全文 »