在 Linux 环境中无法识别库

Library not recognized in Linux environment

我安装了 "eclipse" 并想在 fedora "linux" 上 运行 "fxruby",但它不起作用。 错误说:

cannot load such file -- fox16 (LoadError)

我用命令安装了这个文件

gem install fxruby

fxruby 不存在于 gem 列表中。

我该如何解决?

关于路径的警告你可以安全地忽略(至少现在)。错误告诉您的是您没有安装 FOX 开发头文件和库,因此无法构建 fxruby gem。因此,您必须安装 fox 开发包 - 它的名称可能类似于 "fox16" 或 "fox16-devel",或者其他名称,具体取决于您 运行ning 的 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。 这些调用之间的区别在于,如果您 运行 普通 ./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。)

已解决 for 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++ support for GCC libstdc++-devel-8.2.1-4.fc28.x86_64 Header files and libraries for C++ development

]

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