我安装了“eclipse”并想在fedora“linux”上运行“fxruby”,但它不起作用。错误说:
无法加载此类文件 -- fox16 (LoadError)
我用命令安装了这个文件
gem install fxruby
但fxruby不存在于 gem 列表中。
我该如何解决?
关于您可以安全忽略的路径的警告(至少目前如此)。错误告诉您的是您没有安装 FOX 开发头文件和库,因此无法构建 fxruby gem。因此,您必须安装 fox 开发包 - 它可能被命名为“fox16”或“fox16-devel”,或者其他名称,具体取决于您运行的 Linux 版本。(如果一切都失败了,您可以自己构建它)。
之后,编译 fxruby(使用gem install fxruby
)应该可以工作。
如果您确实想自己构建 FOX,以下是(大约)步骤:
1)访问FOX网站http://www.fox-toolkit.org/,下载最新的1.6(稳定)版本(目前为fox-1.6.57.tar.gz)。
2)我会创建一个目录~/src,然后cd ~/src
解压下载的包,例如tar xvf ~/Downloads/fox-1.6.57.tar.gz
(根据你实际下载包的地方调整路径)。
2) 您现在应该有一个子目录fox-1.6.57
(即~/src/fox-1.6.57/
)。cd 到它,并阅读 README 和 INSTALL 中的顶级文档。
3) 运行配置脚本,./configure
或 ./configure --prefix=$HOME
. 这些调用之间的区别在于,如果您运行 plain ./configure
,软件将安装在默认位置 /usr/local 下(安装时需要 root 访问权限),而调用 ./configure --prefix=$HOME
将导致软件安装在 $HOME 下。后者不需要root访问权限来安装,如果您只是安装软件供自己使用,可能会更好。
4)我是在自己的主目录下安装,创建适当的子目录: cd ~; mkdir bin include lib
'. (安装可能会解决这个问题,但预先创建目录并没有什么坏处。)
5)现在运行make
。那应该在本地目录(~/src/fox-1.6.57/)下编译和构建 FOX 库
6) 运行make install
。这会将库安装在 /usr/local 的默认位置或您的主目录下〜(取决于您的configure
选择)
7) 至此,您应该安装了 FOX 库和头文件。现在试试gem install fxruby
。(如果您要进行本地安装,可能gem install fxruby --user-install
。)
为fedora解决
我安装了所有这些:
ruby-devel.x86_64
fox-devel.x86_64
sudo dnf install redhat-rpm-config
yum groupinstall 'Development Tools'
yum group info 'Development Tools' yum -y install gcc ruby-devel
rubygems compass
gcc compt gcc-c++-x86_64-linux-gnu.x86_64
gcc-c++
[
gcc-c++-8.2.1-4.fc28.x86_64 C++ 支持 GCC libstdc++-devel-8.2.1-4.fc28.x86_64 用于 C++ 开发的头文件和库]
sudo dnf install libpng12-devel.x86_64
sudo dnf install libb2-devel.x86_64
sudo dnf install libX11-devel
sudo dnf install libXcursor-devel.x86_64
sudo dnf install libXext-devel.x86_64 libXrandr-devel.x86_64
gem install fxruby