Что означает эта ошибка GCC «... перемещение усечено до соответствия ...»?

Я программирую хост-систему ускорителя хоста. Хост работает на ПК под управлением Ubuntu Linux и обменивается данными со встроенным оборудованием через соединение USB. Связь осуществляется путем копирования фрагментов памяти в память встроенного аппаратного обеспечения и из нее.

В памяти платы имеется область памяти, которую я использую в качестве почтового ящика, в которую я записываю и читаю данные. Почтовый ящик определен как структура, и я использую то же определение, чтобы выделить зеркальный почтовый ящик в моем хост-пространстве.

В прошлом я успешно использовал эту технику, поэтому теперь я скопировал хост-проект Eclipse в рабочую область моего текущего проекта и внес соответствующие изменения имени. Странно то, что при сборке хост-проекта я получаю следующее сообщение:

Building target: fft2d_host
Invoking: GCC C Linker
gcc -L/opt/adapteva/esdk/tools/host/x86_64/lib -o "fft2d_host" ./src/fft2d_host.o -le_host -lrt

./src/fft2d_host.o: In function `main':

fft2d_host.c:(.text+0x280): relocation truncated to fit: R_X86_64_PC32 against symbol `Mailbox' defined in COMMON section in ./src/fft2d_host.o

Что означает эта ошибка и почему она не будет опираться на текущий проект, в то время как с более старым проектом все в порядке?

Ответы на вопрос(6)

Ваш ответ на вопрос