CMake使用NDK独立工具链进行交叉编译

在交叉编译中,NDK是一个很好的工具。windows、linux、android、32bit、64bit,能够处理绝大部分程序的交叉编译。而CMake组织程序又使得程序具有良好的跨平台编译。NDK下载好之后,工具链无法直接被cmake使用,需要通过一个脚本生成独立的工具链。这篇博客介绍CMake使用NDK的独立工具链。

阅读更多

正则表达式测试工具

最近因为有把sublime-completions插件转化成vscode-snippet插件的需要(这两个都是自定义代码补全插件),也就是做一些复杂的文本匹配和替换工作,所以写了一个很长的正则表达式。之前写过一篇正则表达式的博客,这篇博客就不说正则表达式了,介(摘)绍(抄)几个正则表达式的测试工具。

个人比较喜欢rubular(可能是因为博主刚上手比较生疏,这个网站给了一个demo,看一看就懂了)

阅读更多

Sublime代码自动补全插件开发快速上手

厌倦了国内繁琐的备案和审查,对无缘无故的网站关停感到无奈,服务器搬到东京后的第一篇博客 ,点开网站速度超级快,心情顺畅,来一发博客。

我们在开发自己的脚本或者编程工具后,可以定义自己的代码自动补全。这篇博客将介绍Sublime中两种添加自己代码补全的方式:代码片段snippet和 completions。

阅读更多

Python调用Lua:Lupa

lua与python均为成熟的脚本方案,它们的不同在与体量,Lua的体量小,高效的执行方式适合嵌入式,python胶水的强大不言而喻。那么如果自己已经有了lua脚本的解决方案,python能否调用呢?答案是肯定的,这篇博客将介绍python中集成的lua环境包:lupa,简单介绍该工具的使用。

阅读更多

Lua虚拟机指令

Lua虚拟机会将Lua语句进行解析,解析为Lua虚拟机指令。Lua虚拟机指令有如下四十条(在lopcodes.h有定义)。有时我们需要在lua层面分析lua虚拟机的行为,那么解析lua虚拟机指令将是非常有用的。 我们可以通过luac来将lua脚本生成lua虚拟机指令。

阅读更多

优雅的用Lua调用OpenCV

说起脚本语言调用opencv,我们通常会想到python。如果说要在更小的系统中使用脚本语言,我们会想到lua。如果说用lua进行图像处理,我们肯定会想到大名鼎鼎的torch。torch中的image模块重写了opencv,封装了lua接口,但是如果我们不想修改opencv如此庞大的源码,又想像python调用opencv那样简单直接,那应该怎么做呢?

在正式开始介绍之前,想展示一段简答的代码,来告诉大家即将要做的事情是什么。(也是假人以渔了^_^)

阅读更多

嵌入式脚本语言:Lua

最近在调研嵌入式脚本语言,发现Lua很适合在嵌入式平台运行。第一次认识Lua是在Torch,lua的解释器源码只有几百K,从未见过如此轻巧的脚本语言。Lua是类C的,所以上手超级快。

这篇博客主要涵盖以下几个方面:lua语言(主要是语法相关的资料)、lua的编译、lua与C/C++交互、lua的调用开销。

阅读更多

基于Doxygen的注释风格

维护一份注释就可以维护一份文档,我们需要Doxygen!我们见过opencv、pcl等很多开源库的代码和网站,他们的代码文档都是doxygen生成的,就像title图中那样。

这篇博客简单介绍doxygen使用的注意事项,后面C++风格注释部分摘抄了这篇博客中的内容。欢迎访问原博客。

阅读更多

使用C++在Windows/Linux下精确计时

在Windows和Linux下有多种计时方式,包括Windows定时器(精度大约在15ms),借助CPU的多媒体定时器(精度在1ms左右)。然而在计算机主板上都有专门的时钟芯片,可以提供极为精确的时间,在选择计时方式时,要考虑到,获取约精确的时间,就要耗费更多的资源,在实际编程时应根据使用条件选择合理的计时方式。这篇博客将介绍Windows/Linux下获取精确时间的方法,并提供一个封装较好的简单计时类。

阅读更多