ошибка при компиляции ffmpeg: gcc не может создать исполняемый файл

Это должно помочь. Этот поиск был сделан на Debian 6, но должен быть тем же на Ubuntu.

#$find /usr/share/mime/ -print0 | xargs -0 grep [.]html 
/usr/share/mime/globs2:50:text/html:*.html
/usr/share/mime/packages/freedesktop.org.xml:    <glob pattern="*.html"/>
/usr/share/mime/globs:text/html:*.html
/usr/share/mime/text/html.xml:  <glob pattern="*.html"/>

От этого Вы видите, что информация находится в /usr/share/mime/globs, /usr/share/mime/globs2, /usr/share/mime/text/html.xml и /usr/share/mime/packages/freedesktop.org.xml

4
04.09.2012, 11:14
4 ответа

Ваша libc установка является незавершенной или повреждается так или иначе. Необходимо сказать, что ОС Вы используете... самую легкую фиксацию, должен, вероятно, переустановить пакеты, которые включают libc.

Или если Вы действительно интересуетесь обнаружением точно, какая часть его повреждается, вот некоторые подсказки:

На типичной glibc установке, ссылках на __libc_csu_init и __libc_csu_fini будет разрешен путем нахождения их в /usr/lib/libc_nonshared.a который можно проверить следующим образом:

$ nm /usr/lib/libc_nonshared.a | egrep '__libc_csu_(init|fini)'
0000000000000000 T __libc_csu_fini
0000000000000010 T __libc_csu_init

Использование /usr/lib/libc_nonshared.a будет инициирован путем соединения с /usr/lib/libc.so (который является текстовым файлом, не фактическим общим объектом). Можно проверить что как это:

Может быть некоторый другой материал в нем также. Можно проверить это с

$ less /usr/lib/libc.so
[...]
GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a )

/usr/lib/libc.so будет использоваться компоновщиком для удовлетворения -lc требование, которое можно проверить как это:

$ ld --verbose -lc
[... lots of stuff ...]
opened script file /usr/lib64/libc.so
attempt to open /lib/libc.so.6 succeeded
/lib/libc.so.6
attempt to open /usr/lib/libc_nonshared.a succeeded
2
27.01.2020, 20:51
  • 1
    Как я переустанавливаю glibc? apt-get install(remove) glibc говорит, что нет никакого пакета, названного glibc –  Omid 04.09.2012, 11:13
  • 2
    apt-get install --reinstall libc6 –  Alan Curry 05.09.2012, 23:20
  • 3
    я получаю ту же ошибку в окнах 8, Какая-либо справка? –  Kishore Jethava 21.12.2016, 15:20

Это означает, что у Вас нет необходимого программного обеспечения для компиляции кода C.

Выполнение это:

apt-get install build-essential

Вы также хотите зависимости от сборки для ffmpeg:

apt-get build-dep ffmpeg

Затем попробуйте еще раз.

5
27.01.2020, 20:51
  • 1
    К сожалению, все еще получение той же ошибки –  Omid 04.09.2012, 13:49

Если вы можете получить ошибку при установке FFMPEG на CentOS 6.5,

создайте репо: /etc/yum.repos.d/dag.repo

# vi  /etc/yum.repos.d/dag.repo

добавьте в него следующие строки,

[dag]
name=DAG RPM Repository
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
enabled=1

GPG ключ для DAG, выполните следующую команду:

# rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt

Теперь обновите и установите ffmpeg,

# yum update
# yum install ffmpeg ffmpeg-devel ffmpeg-libpostproc
0
27.01.2020, 20:51

Я знаю, что это старый вопрос, но недавно у меня возникла проблема с похожими симптомами при компиляции ffmpeg на моей рабочей станции. Причиной проблемы была передача нескольких флагов для включения кодеков opus и vpx, что, по-видимому, влияет на флаги, переданные в gcc. В моем случае этих библиотек еще не было, и ./configureобнаружил, что gccне создает исполняемый файл с этими флагами. В данном случае ошибка gcc is unable too create an executableбыла недостаточной.

0
27.01.2020, 20:51

Теги

Похожие вопросы