根据 https://github.com/ryanmelt/qtbindings 上描述
Note: The current windows gem (since 4.8.6.4) only works with Ruby 2.4 and Ruby 2.5. To use Ruby 2.0 to Ruby 2.3 please install version 4.8.6.3
也就是说需要注意版本兼容性问题。
根据系统所用的ruby -v版本选择不同方案。

方案1:

要安装qtbindings和Qt4,您必须做。
在Mac OS X上打开终端,然后键入:
第一步:
brew install cmake
第二步:
brew install qt
第三步:
gem install qtbindings
它必须解决所有问题。

其中会遇到qtbindings的编译错误,在mac下 code 需要qt4,因此,添加qt4到path中:
echo 'export PATH="/opt/local/libexec/qt4/bin:$PATH"' >> ~/.bash_profile
然后source ~/.bash_profile

方案2:

将ruby版本进行修改,原brew update ; brew install ruby 是安装最新版本,存在版本兼容性。因此需要安装rvm进行版本降级和管理。

$ curl -L get.rvm.io | bash -s stable

注意切换安装源,国外源速度有点慢。
$ echo "ruby_url=https://cache.ruby-china.com/pub/ruby" > ~/.rvm/user/db

利用RVM管理Ruby版本
查看已经安装的ruby

$ rvm list

列出已知的ruby版本

$ rvm list known

安装一个ruby版本

$ rvm install 2.6.5

切换ruby版本号

$ rvm use 2.6.5

设置默认的版本

$ rvm use 2.6.5 --default

卸载已安装的ruby版本

$ rvm remove 2.6.5

更新RVM
$ rvm get stable

附件:历史操作命令记录

 635  rvm osx-ssl-certs update all
  636  bundle install
  637  bundle config build.nokogiri --use-system-libraries
  638  bundle install
  639  cmake -v
  640  cmake --version
  641  ruby list
  642  rvm list
  643  rvm list known
  644  rvm install 2.5
  645  rvm use 2.5.5 --default
  646  ruby -v
  647  bundle install
  648  ls /Users/xxxx/.rvm/gems/ruby-2.5.5/cache/
  649  gem install nokogiri -v '1.8.1' --source 'https://rubygems.org/'
  650*     bundle config build.nokogiri --u
  651      bundle install
  652  rm /Users/xxxx/.rvm/gems/ruby-2.5.5/cache/nokogiri-1.8.1.gem
  653      bundle install
  654  gem install nokogiri
  655  ruby Launcher
  656  bundle env
  657  gem install nokogiri -v '1.8.1' --source 'https://rubygems.org/'
  658  rvm osx-ssl-certs update all
  659  gem install nokogiri -v '1.8.1' --source 'https://rubygems.org/'
  660  gem install nokogiri -v '1.8.1' --source 'http://rubygems.org/'
  661  gem install nokogiri -v '1.8.1' --source 'http://rubygems.org/'
  662      bundle install
  663      bundle install
  664  ruby Launcher
  665  bundle install
  666  rvm osx-ssl-certs update all
  667  bundle install
  668  gem install cosmos -v '4.1.1' --source 'http://rubygems.org/'
  669  rm /Users/kanghailong/.rvm/gems/ruby-2.5.5/cache/cosmos-4.1.1.gem
  670  gem install cosmos -v '4.1.1' --source 'http://rubygems.org/'
  671  gem install ruby-termios
  672  gem install ruby-termios
  673  gem install cosmos -v '4.1.1' --source 'http://rubygems.org/'
  674  gem install cosmos -v '4.1.1' --source 'https://rubygems.org/'
  675  ping https://rubygems.org
  676  gem install cosmos -v '4.1.1' --source 'https://rubygems.org/'
  677  bundle install
  678  ruby Launcher
posted @ 2020-02-22 15:28 khldragon 阅读(318) 评论(0) 推荐(0) 编辑
摘要: Mac自身的ruby 版本 2.x,通过ruby -v可以查看版本号。为更新到ruby的最新版本,可通过以下命令解决:brew updatebrew install ruby执行完命令后,ruby -v后其实还是原来的版本👌,这是因为环境变量没有配置。因此,还有一个步骤就是配置环境变量。echo 'export PATH="/usr/local/opt/ruby/bin:$PATH"' >> ~... 阅读全文
posted @ 2020-02-22 10:00 khldragon 阅读(11331) 评论(0) 推荐(0) 编辑
摘要: 简介对称加密算法的一种,具体介绍可以参加维基百科。这里放上一幅图,方便理解其算法过程。算法实例/* take 64 bits of data in v[0] and v[1] and 128 bits of key[0] - key[3] */void encipher(unsigned int num_rounds, uint32_t v[2], uint32_t const key[4]) {... 阅读全文
posted @ 2020-02-15 08:39 khldragon 阅读(1112) 评论(0) 推荐(0) 编辑
摘要: 我的认识消息认证码英文为Message Authentication Code,也称消息识别码等不同称呼。其主要功能是验证消息的真实性。消息认证模型如下:HMAC(Hash-based Message Authentication Code)HMAC是一种使用单向散列函数构建MAC的方法,其中H就是Hash的意思。HMAC中所使用的单向散列函数并不仅限于一种,任何高强度的单向散列函数都可以被用于H... 阅读全文
posted @ 2020-02-13 15:53 khldragon 阅读(1344) 评论(0) 推荐(0) 编辑
摘要: 2.1、 数据包packet定义padding部分为来适应不同的接口。typedef struct __attribute__((__packed__)) { uint8_t padding[xsp_PADDING_BYTES]; uint16_t length; xsp_id_t id; union ... 阅读全文
posted @ 2020-02-11 16:00 khldragon 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 1.1、协议标识符(协议头部)设计例子协议头部一般规定字段及字段大小,以此来约束协议适用范围和使用场景/** Size of bit-fields in XSP header */#define XSP_ID_PROTOCOL_SIZE 3#define XSP_ID_PRIO_SIZE 3#define XSP_ID_HOST_SIZE 4#define XSP... 阅读全文
posted @ 2020-02-11 14:04 khldragon 阅读(372) 评论(0) 推荐(0) 编辑
摘要: 一、时间用途根据实践需要,时间有不同的使用方式。场景1:等待xx秒执行某个动作,这个等待在计算机系统的程序中是如何实现的?场景2:获取当前年月日等基本时间信息场景3:计算代码执行时间二、获取时间方式1:函数"clock_gettime"此函数是基于Linux C语言的时间函数,可以用于计算精度和纳秒。 要点:与Linux系统强相关。头文件和函数声明如下:#includeint clock_gett... 阅读全文
posted @ 2020-02-04 11:31 khldragon 阅读(2308) 评论(0) 推荐(0) 编辑
摘要: 熵是物理学中的概念,是指系统混沌状态的一种量化指标。熵的大小与系统混沌程度正相关,也就是系统越混沌,熵值越大,反之,亦然。信息熵表征信息不确性的指标。与信息的不确定性相关,信息熵越大,信息的不确定性越大。信息熵是怎么计算的?涉及到信息论的内容,也就是信息编码问题。信息要全部表示完,共需多少个编码?或者说需要个二进制位数。香农给出了理论也就是:\[L(x)=log_2(1/p(x))\]L表示所需要... 阅读全文
posted @ 2019-08-10 16:12 khldragon 阅读(1631) 评论(0) 推荐(0) 编辑
摘要: 整数在计算机中的表示在计算机中,整数采用补码表示。当前主流编译器中整型在内存中占用四个字节,共32位。机器数:一个数在计算机中的二进制表示形式, 叫做这个数的机器数。机器数是带符号的,在计算机用一个数的最高位存放符号, 正数为0, 负数为1.比如,十进制中的数 +3 ,计算机字长为8位,转换成二进制就是00000011。如果是 -3 ,就是 10000011 。那么-1,就是10000001原码、... 阅读全文
posted @ 2019-04-26 06:40 khldragon 阅读(2980) 评论(0) 推荐(1) 编辑
摘要: 配置镜像加速器具体设置见下图即可。 阅读全文
posted @ 2019-04-20 22:00 khldragon 阅读(1651) 评论(0) 推荐(1) 编辑

喜欢请打赏

扫描二维码打赏

了解更多

点击右上角即可分享
微信分享提示