Raspberry Pi Zero W解决调试信息不足的问题(以libzmq-dev为例)

栏目: 软件资讯 · 发布时间: 6年前

内容简介:最近在参照当我们需要跟踪问题的时候,使用我们可以手工安装调试信息包,如下:

最近在参照 树莓派实时系统下脚本语言的选择(应当使用 Lua 而不是Python) 调用调试 lua-zmq 的时候,发现使用 PAIR 模式进行线程之间通信,长时间运行后会出现死锁的情况。

当我们需要跟踪问题的时候,使用 apt-get 安装的版本缺乏必要的调试信息。

我们可以手工安装调试信息包,如下:

$ sudo apt install libzmq-dbg

我们也可以从源代码重新编译一份,如下:

# 打开源代码的源
$ sudo sed -i "s/^#deb-src/deb-src/g" /etc/apt/sources.list
 
# 安装必要的编译工具
$ sudo apt-get install build-essential devscripts lintian
 
$ cd ~
 
# 下载源代码,此处不可sudo,否则后续操作会出现权限问题
$ apt-get source libzmq-dev
 
$ cd zeromq*/
 
# 安装依赖项
$ sudo apt-get install libpgm-dev
 
$ sudo apt-get install uuid-dev
 
$ debuild -us -uc -b
 
$ cd ..
 
$ sudo dpkg -i libzmq-dev*.deb
 
$ sudo dpkg -i libzmq-dbg*.deb
 
$ sudo ldconfig

以上是针对 Debian 安装包来进行的处理,然而对于 luarocks 安装的插件来说,默认 luarocks 是不能编译调试版本的,此时就需要我们手工编译了。我们以 lua-zmq 为例子,参考如下:

$ sudo apt-get -y install cmake
 
$ git clone git://github.com/Neopallium/lua-zmq.git
 
$ cd lua-zmq ; mkdir build ; cd build
 
$ cmake .. -DCMAKE_BUILD_TYPE=Debug
 
$ make
 
$ sudo make install

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

大型网站系统与Java中间件开发实践

大型网站系统与Java中间件开发实践

曾宪杰 / 电子工业出版社 / 2014-4-24 / 65.00

本书围绕大型网站和支撑大型网站架构的 Java 中间件的实践展开介绍。从分布式系统的知识切入,让读者对分布式系统有基本的了解;然后介绍大型网站随着数据量、访问量增长而发生的架构变迁;接着讲述构建 Java 中间件的相关知识;之后的几章都是根据笔者的经验来介绍支撑大型网站架构的 Java 中间件系统的设计和实践。希望读者通过本书可以了解大型网站架构变迁过程中的较为通用的问题和解法,并了解构建支撑大型......一起来看看 《大型网站系统与Java中间件开发实践》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

随机密码生成器
随机密码生成器

多种字符组合密码