2016-05-06 6 views
0

Я пытаюсь перекрестно скомпилировать проект с x86_64 Linux на Win64 в Lazarus. На сборке я получаю: Fatal: Cannot find system used by fcllaz of package FCL.Кросс-компиляция в Lazarus: не найден fcllaz

Я видел этот вопрос в нескольких местах, и, я думаю, я не понимаю ответов. У меня есть fcllaz.pas. Я видел ответы «Проверьте ваши ответы -Fu», но для меня недостаточно деталей, чтобы определить, что я ищу или что вам нужно сделать. Я видел эти утверждения в fpc.cfg, я просто не уверен, что с ними делать.

Я совершенно новый для Лазаря. В форме вопроса: как указать Lazarus/fpc на fcllaz и собрать эту вещь?

ответ

0

Ошибка в том, что она не может найти устройство system, fcllaz - это то, что компилируется, когда оно впервые пропустит систему.

Неиспользуемая система означает, что компилятор не может найти RTL (и остальные прекомпилированные блоки) для выбранной цели (win64). Вероятно, они не связаны с вашей установкой, поэтому вам нужно их самостоятельно создавать и устанавливать.

-Fu - это строки в файле fpc.cfg, которые должны указывать на соответствующие блоки.

Хотя немного устарели, у buildfaq много информации о том, как система строит и находит свои блоки.

+0

Спасибо за ваш ответ. Я обнаружил, что мне нужно скомпилировать как freepascal, так и Lazarus из источника вместо того, чтобы пытаться использовать дистрибутивные двоичные файлы. Ты бы согласился с этим? –

+0

Да, кросс-пакеты не подготовлены, кроме win32-> win64 и win32-> wince и некоторых вариантов mac. –