snezer
@snezer
Программист

Что означает ошибка: You must build your code with position independent code if Qt was built with -reduce-relocations?

При компиляции во FreeBsd получил ошибку "You must build your code with position independent code if Qt was built with -reduce-relocations" как бы дословный перевод знаю но что это означает не понятно. Ну и дополнительная приписка от сборщика: "Compile your code with -fPIC or -fPIE" f что такое понятно а вот что такое PIC или PIE нет
  • Вопрос задан
  • 2676 просмотров
Решения вопроса 1
gbg
@gbg
Любые ответы на любые вопросы
Эта пара опций (именно пара, руководство советует применять обе для получения предсказуемых результатов) как раз и есть указание сборщику изготавливать код, не зависящий от своего размещения в памяти

Кратко поясню - некоторые инструкции процессора могут адресовать программный код по абсолютному адресу, поэтому если код загружен в иной базовый адрес, все перемещения - собьются, и код работать не будет. Эти опции как раз и заставят компоновщик применять только относительную адресацию программного кода.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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