Lazarus x64
Модератор: Модераторы
Lazarus x64
Поставил вчера 64 битную xubuntu, вопрос - если я возьму из svn fpc и lazarus они автоматом при сборке будут 64 битные? или надо при сборке указать параметры какие?
Извините за некомпетентность в данном вопросе, до этого пользовался 32 битной версией системы, а по теме материала не нашёл, в вики всё очень кратко, не понятно, подскажите пожалуйста. Интересует какие вообще параметры компиляции лазаря и компилятора есть, и как собрать версию для сборки 64 и 32 битных приложений.
Заранее спасибо
Извините за некомпетентность в данном вопросе, до этого пользовался 32 битной версией системы, а по теме материала не нашёл, в вики всё очень кратко, не понятно, подскажите пожалуйста. Интересует какие вообще параметры компиляции лазаря и компилятора есть, и как собрать версию для сборки 64 и 32 битных приложений.
Заранее спасибо
- Brainenjii
- энтузиаст
- Сообщения: 1351
- Зарегистрирован: 10.05.2007 00:04:46
В OpenSUSE на x86_64 системе по умолчанию собираются х86_64 приложения. Предположу, что на xubuntu та же история. Для сборки x86_32 приложения потребуется совершить несколько манипуляций - http://wiki.lazarus.freepascal.org/Cros ... g#To_Linux На fpc 2.6.0 всё прошло без каких-либо проблем (наконец-то ^_^)
спасибо сегодня попробую
Добавлено спустя 16 часов 33 минуты 47 секунд:
может немного оффтоп но при сборке fpc взятой из svn выдаёт такую ошибку:
p.s. сборка под xubuntu x64, установлен из репов fpc 2.4.4, всё по дефолту
Добавлено спустя 1 час 11 минут 36 секунд:
может ткнёте носом где искать решение проблемы, сам не могу разобраться
Добавлено спустя 9 часов 50 минут 50 секунд:
магия какая то, скачал fpc заново с svn всё собралось нормально... о_О
Добавлено спустя 16 часов 33 минуты 47 секунд:
может немного оффтоп но при сборке fpc взятой из svn выдаёт такую ошибку:
make[4]: Выход из каталога `/home/ronin/fpc/rtl/linux'
make[3]: Выход из каталога `/home/ronin/fpc/rtl/linux'
make[2]: Выход из каталога `/home/ronin/fpc/rtl'
make[1]: Выход из каталога `/home/ronin/fpc'
make packages_smart FPC=/home/ronin/fpc/compiler/ppcx64 RELEASE=1
make[1]: Вход в каталог `/home/ronin/fpc'
make -C packages smart
make[2]: Вход в каталог `/home/ronin/fpc/packages'
make -C fpmkunit bootstrap
make[3]: Вход в каталог `/home/ronin/fpc/packages/fpmkunit'
/bin/mkdir -p units_bs/x86_64-linux
src/fpmkunit.pp -FUunits_bs/x86_64-linux -Fu../paszlib/src -Fu../hash/src -Fi../paszlib/src -Fi../fcl-process/src/unix -Fu../fcl-process/src -Fi../fcl-process/src/linux -Fi../fcl-process/src/dummy
make[3]: execvp: src/fpmkunit.pp: Отказано в доступе
make[3]: *** [bootstrap] Ошибка 127
make[3]: Выход из каталога `/home/ronin/fpc/packages/fpmkunit'
make[2]: *** [fpmkunit_bootstrap] Ошибка 2
make[2]: Выход из каталога `/home/ronin/fpc/packages'
make[1]: *** [packages_smart] Ошибка 2
make[1]: Выход из каталога `/home/ronin/fpc'
make: *** [build-stamp.x86_64-linux] Ошибка 2
p.s. сборка под xubuntu x64, установлен из репов fpc 2.4.4, всё по дефолту
Добавлено спустя 1 час 11 минут 36 секунд:
может ткнёте носом где искать решение проблемы, сам не могу разобраться
Добавлено спустя 9 часов 50 минут 50 секунд:
магия какая то, скачал fpc заново с svn всё собралось нормально... о_О
ещё такой вопрос - как определить разрядность программы? чтобы например вывести текст что это 64 битная версия программы не прописывая это вручную каждый раз?
Код: Выделить всё
{$ifdef CPU32}
Caption:='32';
{$else}
caption:='64';
{$endif}и ещё такой момент в Генерация кода->Целевое семейство процессоров указал i386, проект собрался но под 32 разрядной ubuntu не запускается, как собрать под 32 разрядную систему проект?
Добавлено спустя 25 минут 37 секунд:
сделал всё по указанной выше инструкции http://wiki.lazarus.freepascal.org/Cross_compiling#To_Linux а как быть дальше непонятно, там написано That's it. Edit your /etc/fpc.cfg file if needed. а что там правит не понял, посмотрел ppc386 появился а что делать дальше?
Добавлено спустя 25 минут 37 секунд:
сделал всё по указанной выше инструкции http://wiki.lazarus.freepascal.org/Cross_compiling#To_Linux а как быть дальше непонятно, там написано That's it. Edit your /etc/fpc.cfg file if needed. а что там правит не понял, посмотрел ppc386 появился а что делать дальше?
- Brainenjii
- энтузиаст
- Сообщения: 1351
- Зарегистрирован: 10.05.2007 00:04:46
там нужно указать пути до скомпиленных юнитов для x86_64 и x86_32 платформ. У меня, например, при сборке fpc из исходников и без install'a (чтобы fpc был в домашнем каталоге) в fpc.cfg потребовалось занести следующие пути:
-Fu/home/Brainenjii/fpc/2.6.0rc1/rtl/units/$fpctarget/
-Fu/home/Brainenjii/fpc/2.6.0rc1/packages/*/units/$fpctarget/
>>ещё такой вопрос - как определить разрядность программы?
Код: Выделить всё
caption:={$I %FPCTARGETCPU%};
caption:={$I %FPCTARGETOS%};