Автоматически компилировать CouchDB из исходного кода в Ubuntu Lucid - PullRequest
0 голосов
/ 10 ноября 2011

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

И получить lib и include каталоги оттуда.Но это выглядит довольно подверженным ошибкам (какие это есть другие libmozjs.so в системе, ...)

Идеально было бы спросить xulrunner сам.Можно ли узнать, где находятся его каталоги lib и include?(which xulrunner дает мне цепочку из 5 (!) Символических ссылок, которые в любом случае не ведут к каталогам lib и include)

Или еще лучше, есть ли способ установить библиотеку SpiderMonkeyавтономно в Lucid?(кроме компиляции из исходного кода)

Ответы [ 3 ]

0 голосов
/ 11 ноября 2011

Для справки, и согласно сообщению Дмитрия, это то, что я в итоге сделал:

# 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
0 голосов
/ 09 февраля 2012

Я использую pkg-config для определения путей к библиотекам, очень похоже на вашу командную строку:

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

отлично работает для Lucid, не так хорошо для новых дистрибутивов, как mozilla-jsтам не существует ...

...