【问题标题】:wxWidgets (wxRuby) with Ruby 2.0wxWidgets (wxRuby) 与 Ruby 2.0
【发布时间】:2025-12-08 15:35:02
【问题描述】:

我正在寻找适用于 Ruby 2.0 的 Win32 wxRuby gem,有人知道在哪里可以找到它吗?我尝试构建它没有成功,似乎该项目已死。

【问题讨论】:

  • “我没有成功尝试构建它”是什么意思?它在构建过程中失败了吗?它建立但没有工作吗?如果有错误,请显示相关行。实际上,除了可能的搜索引擎结果之外,您没有提供太多帮助,作为尽职调查的一部分,您应该已经这样做了。
  • @theTinMan 我使用了 RubyInstaller 的 DevKit,但在构建 Wx、Swig 和 Wxruby 时遇到了问题和错误。因为这是一件非常复杂的事情,而且我有一个生产应用程序,所以我不想花时间测试和调试它。我知道这不是正确的“研究接近”,但需要专注于我的应用程序开发,而不是 Wxruby 库。

标签: ruby wxwidgets ruby-2.0 wxruby


【解决方案1】:

我仍在战斗中,我在 linux Ubuntu (Xenial 16.04) 和 Mint (17 和 18) 上使用 Ruby 2.3 成功构建了 wxRuby,用于 i386 和 amd64,测试和使用来自 here 和 @987654322 的说明@:

# temporary add this source for a complete libwxgtk2.8
echo "deb http://archive.ubuntu.com/ubuntu precise main universe" | tee /etc/apt/sources.list.d/precise-copies.list
apt update

# install required packages
apt-get install libwxgtk2.8-dev libglib2.0-dev libpango1.0-dev libgtk2.0-dev libgtk-3-dev pangox-1.0-dev build-essential curl git

# install recommended swig version
wget "http://downloads.sourceforge.net/project/swig/swig/swig-1.3.38/swig-1.3.38.tar.gz?r=&ts=1471028964&use_mirror=ufpr" -O swig-1.3.38.tar.gz
tar zxvf swig-1.3.38.tar.gz
cd swig-1.3.38
./configure
make -j8
make install

# install ruby, using RVM
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
\curl -sSL https://get.rvm.io | bash -s stable
source /etc/profile.d/rvm.sh
rvm install 2.3.0

# wxRuby
git clone https://github.com/cinnammon/wxRuby-ng
cd ~/wxRuby-ng
export WXRUBY_EXCLUDED=GLCanvas
export WXRUBY_VERSION=2.0.1
# add "Config = RbConfig unless defined?(Config)" to the top of ./rakefile
# and change 'raise "This version of Ruby (#{RUBY_VERSION}) is not supported"'
# on line 38 for "SWIG_MINIMUM_VERSION = '1.3.37'"
rake
# I got some "extern" "static" declaration errors on some files,
# just changed "static" to "extern" and all went well
rake install

# remove source
rm /etc/apt/sources.list.d/precise-copies.list
apt update

我会继续尝试将它移植到 Windows 或者坚持使用 Linux,但会更新这篇文章 :)

【讨论】:

  • 伙计们,我做到了,在 Ruby 3.0.1 上取得了成功 :) 很快就会发布结果
【解决方案2】:

支持 wxruby gem 的最新 ruby​​ 版本是 1.9.1(gem 名为 wxruby-ruby19,名为 wxruby 的 gem 专用于 ruby​​ 1.8)并且 wxruby 项目不再开发。因此,如果您需要使用 ruby​​ 2.0,您现在只能靠自己了。但是请尝试通过http://www.ruby-forum.com/forum/wxruby 询问一些前 wxruby 开发人员仍然活跃并渴望提供帮助。

【讨论】: