Ответ 1
Просто удалите файл объекта.
Эта ошибка, скорее всего, появилась после того, как предыдущая сборка была прервана, и объектный файл не был полностью сгенерирован.
Я пытаюсь скомпилировать простую программу Hello World в Linux с помощью Eclipse, но я всегда получаю следующее:
Building target: hello
Invoking: GCC C++ Linker
g++ -o "hello" ./src/hello.o
./src/hello.o: file not recognized: File truncated
collect2: ld returned 1 exit status
make: *** [hello] Error 1
**** Build Finished ****
Кто-нибудь знает, в чем проблема?
Просто удалите файл объекта.
Эта ошибка, скорее всего, появилась после того, как предыдущая сборка была прервана, и объектный файл не был полностью сгенерирован.
Так же, как информация, если некоторые приходят сюда.
Другой проблемой (с той же ошибкой) может быть то, что вы используете ccache для более быстрой компиляции. В этом случае поврежден файл *.o. Поэтому по этой причине вам нужно очистить кеш с помощью
ccache -C
(обратите внимание на верхний регистр C!)
Утратил меня в первый раз;-)
Я думаю,
g++ -o "hello" ./src/hello.o
should be ./src/hello.(c | cpp | cc depending on your language type)