0

Mozilla SpiderMonkey 不再作为独立包在 Ubuntu Lucid 中提供。根据此链接,您必须使用提供的库xulrunner,并对 CouchDB 配置脚本说:

./configure --with-js-lib=/usr/lib/xulrunner-devel-1.9.2.3/lib --with-js-include=/usr/lib/xulrunner-devel-1.9.2.3/include

这很好,但我需要自动执行此操作。在我的情况下,这不是1.9.2.3,但是1.9.2.23,无论如何这将在将来更改,恕不另行通知。我有一个安装 CouchDB 的无人值守脚本,我想调整它以支持 lucid。

我可以找图书馆:

$ locate libmozjs.so
/usr/lib/xulrunner-1.9.2.23/libmozjs.so

并从那里派生libinclude目录。但这看起来很容易出错(libmozjs.so系统中还有其他什么,...)

理想的事情是问问xulrunner自己。是否可以查询其libinclude目录在哪里?(which xulrunner给我一串 5 个(!)符号链接,无论如何都不会指向libandinclude目录)

或者更好的是,有没有办法在 Lucid 中以独立的方式安装 SpiderMonkey 库?(除了从源代码编译)

4

3 回答 3

0

作为参考,根据 Dmitry 的帖子,这就是我最终要做的:

# Install SpiderMonkey
if [ "$UBUNTU_VERSION" == "lucid" ] ; then
    wget http://launchpadlibrarian.net/24586151/libmozjs0d_1.8.1.18%2Bnobinonly.b308.cvs20090331t155113-0ubuntu0.8.10.1_amd64.deb
    wget http://launchpadlibrarian.net/17059687/libmozjs-dev_1.8.1.16%2Bnobinonly-0ubuntu1_all.deb
    sudo dpkg -i libmozjs0d_1.8.1.18+nobinonly.b308.cvs20090331t155113-0ubuntu0.8.10.1_amd64.deb
    sudo dpkg -i libmozjs-dev_1.8.1.16+nobinonly-0ubuntu1_all.deb
else
    sudo apt-get install -y libmozjs-dev
fi
于 2011-11-10T20:26:45.673 回答
0

我使用pkg-config与您的命令行非常相似的方式来检测库的路径:

LDFLAGS="$(pkg-config mozilla-js --libs-only-L)" CFLAGS="$(pkg-config mozilla-js --cflags)" ./configure

对 Lucid 很有效,但对较新的发行版不太好,因为那里不存在 mozilla-js...

于 2012-02-09T13:48:50.383 回答