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

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

查看所有标签

猜你喜欢:

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

Programming Ruby

Programming Ruby

Dave Thomas、Chad Fowler、Andy Hunt / Pragmatic Bookshelf / 2004-10-8 / USD 44.95

Ruby is an increasingly popular, fully object-oriented dynamic programming language, hailed by many practitioners as the finest and most useful language available today. When Ruby first burst onto the......一起来看看 《Programming Ruby》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

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

多种字符组合密码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试