2013-03-29 3 views
8

Im пытается установить ffmpeg на моем сервере. Im unsing CentOS 5.Библиотека libtool используется, но `LIBTOOL 'не определен?

Когда я пытаюсь установить libfdk_aac я получаю следующую ошибку

` autoreconf: Entering directory `.' 
autoreconf: configure.ac: not using Gettext 
autoreconf: running: aclocal --force -I m4 
autoreconf: configure.ac: tracing 
autoreconf: configure.ac: not using Libtool 
autoreconf: running: /usr/bin/autoconf --force 
autoreconf: configure.ac: not using Autoheader 
autoreconf: running: automake --add-missing --copy --force-missing 
Makefile.am:31: Libtool library used but `LIBTOOL' is undefined 
Makefile.am:31: 
Makefile.am:31: The usual way to define `LIBTOOL' is to add `AC_PROG_LIBTOOL' 
Makefile.am:31: to `configure.ac' and run `aclocal' and `autoconf' again. 
Makefile.am: C objects in subdir but `AM_PROG_CC_C_O' not in `configure.ac' 
autoreconf: automake failed with exit status: 1 ` 

Если я типа, который LIBTOOL я получаю/USR/BIN/Libtool, поэтому я думаю, что установлен Libtool. Так что я не уверен, почему эта ошибка происходит.

Спасибо за любые советы

+0

Под этой ubuntu эта строка исправлена ​​для меня: apt-get install libtool –

+2

сначала попробуйте запустить ['libtoolize'] (http://stackoverflow.com/a/18980043/2297751) в этом каталоге, а затем повторно запустить 'autoreconf'. – Jon

+0

Примечание по терминологии. Если вы используете 'autoreconf', то вы делаете гораздо больше, чем просто пытаетесь« установить »ffmpeg. Вы пытаетесь построить весь пакет, который намного больше, чем просто создание и установка из предварительно сконструированного пакета. –

ответ

8

ошибка не говорит вам, что libtool не установлен, но вы не проверять его в configure.ac. Добавьте строку LT_INIT в configure.ac. Если autoreconf затем жалуется, что он не знает, что такое LT_INIT, вам следует либо обновить установку libtool, либо использовать AC_PROG_LIBTOOL. (AC_PROG_LIBTOOL следует заменить на LT_INIT в новых проектах.)

+2

Ответ немного полезен, но на самом деле не говорит, что делать. Что означает «использовать AC_PROG_LIBTOOL»? – frabcus

+1

@frabcus Это означает, что если добавление 'LT_INIT' в configure.ac не работает, вы должны добавить строку 'AC_PROG_LIBTOOL'. Однако сейчас это плохой совет. AC_PROG_LIBTOOL категорически не рекомендуется, и если добавление «LT_INIT» не работает, рекомендуется обновить целую цепочку автозаполнения, а не пытаться работать с древним треском. –

+0

@WilliamPursell Я согласен в теории и не согласен на практике. Просто добавил 'AC_PROG_LIBTOOL' для компиляции' libxslt', и он работал как шарм ... :) –

5

У меня была та же проблема. Сделал следующий

$brew install libtool 
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/libtool- 2.4.2.mavericks.bottle.2.tar.gz 
######################################################################## 100.0% 
==> Pouring libtool-2.4.2.mavericks.bottle.2.tar.gz 
==> Caveats 
In order to prevent conflicts with Apple's own libtool we have prepended a "g" 
so, you have instead: glibtool and glibtoolize. 
==> Summary 
    /usr/local/Cellar/libtool/2.4.2: 66 files, 2.2M 
fdk-aac $ glibtoolize 
fdk-aac $ autoreconf -fiv 
fdk-aac $ ./configure 
fdk-aac $ make 
fdk-aac $ make -install 
go to ffmpeg/build 
ffmpeg/build$ ../configure --enable-libfdk-aac --enable-nonfree 
ffmpeg/build$make 
ffmpeg/build$sudo make install 
do ls /usr/local/lib/*fdk* check that libfdk-aac is installed 
go to my application 

myapp/build$cmake ../ 
myapp/build$make 

Надеется, что это помогает

+0

Я люблю тебя, спасибо! Хотел бы я как-нибудь опробовать тебя :) – frabcus

0

я наткнулся на тот же вопрос, когда установить GeoIP для Nginx в CentOS (при попытке запустить команду сделать), и это то, что я сделал. ням установить Libtool Добавлено ниже линии в конце configure.in AC_CONFIG_MACRO_DIR ([m4])

Добавить ниже линии в конце Makefile.am ACLOCAL_AMFLAGS = -I m4

запустить $ ACLOCAL $ libtoolize

Не спрашивайте меня, почему. Но это сработало.