Ubuntu Lucid不再提供Mozilla SpiderMonkey作为独立软件包。根据此link,您必须使用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
从那里派生lib
和include
目录。但这看起来很容易出错(系统中还有其他libmozjs.so
,...)
理想的事情是问xulrunner
本身。是否可以查询其lib
和include
目录的位置? (which xulrunner
给了我一系列5(!)符号链接,无论如何都不会导致lib
和include
目录
或者更好的是,有没有办法在Lucid中以独立的方式安装SpiderMonkey库? (除了从源代码编译)
答案 0 :(得分:0)
<强> I386 强> https://launchpad.net/ubuntu/lucid/i386/libmozjs-dev/1.8.1.16+nobinonly-0ubuntu1
<强> AMD64 强> https://launchpad.net/ubuntu/lucid/amd64/libmozjs-dev/1.8.1.16+nobinonly-0ubuntu1
你在这里。您还需要libnspr4-dev。
答案 1 :(得分:0)
作为参考,根据德米特里的帖子,这就是我最终做的事情:
# 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
答案 2 :(得分:0)
我使用pkg-config
检测库的路径,与命令行非常相似:
LDFLAGS="$(pkg-config mozilla-js --libs-only-L)" CFLAGS="$(pkg-config mozilla-js --cflags)" ./configure
对Lucid非常有用,对于较新的发行版来说不是很好,因为那里不存在mozilla-js ......