2012-03-04 3 views
0

я компиляция/связывая свою программуКакие ошибок это «с (.text + 0x7): перемещение усекается: 8 .data»

i386-gcc -o output.lnx func.opc mainc.opc 

и я продолжал получать эту ошибку. Я честно понятия не имею, что это значит.

Любой ключ?

спасибо,

+1

Что это за файлы '.opc'? – bdonlan

+0

.opc-файлы - файлы opcode, созданные i-386-as -o func.opc func.s – user113454

+0

@ IgnacioVazquez-Abrams: Тогда как я могу это исправить? – user113454

ответ

1

Это обычно симптом наличия слишком большого количества кода или данных в программе. Перемещение со смещением 7 в .text-сегменте (код) было скомпилировано с фиксированным размером (2 или 4), но данные/инструкция, на которые он ссылается, составляют более 64k или 2G.

Кроме этого, я не могу сказать вам, как исправить это, фактически не видя объектные файлы. Полезными инструментами для определения проблемы являются objdump (с флагами -dr) и readelf программ.

 Смежные вопросы

  • Нет связанных вопросов^_^