Я установил build-essential в Ubuntu 14.04 и создал тестовый файл helloworld.c с:
#include <stdio.h>
int main(void)
{ printf("Hello world\n"); return 0; }
Выходные данные gcc -o hello helloworld.c
:
/usr/lib/gcc/i686-linux-gnu/4.8/libgcc.a: file not recognized: File format not recognized
collect2: error: ld returned 1 exit status
Есть ли какие-нибудь предложения о том, что я сделал неправильно?
Мои два цента:
Файл с именем /usr/lib/gcc/i686-linux-gnu/4.8/libgcc.a
является частью пакета libgcc-4.8-dev
Следовательно
sudo apt-get install --reinstall libgcc-4.8-dev
Я нашел проблему. Была старая, поврежденная установка gcc-4.8, который не становится замененным, когда существенный для сборки установлен. Я использовал
sudo apt-get remove gcc-4.8
sudo apt-get remove --purge
sudo apt-get auto-remove
sudo apt-get install build-essential
Теперь прекрасные тестовые прогоны.