2012-04-11 3 views
9

Мне было интересно, есть ли какой-либо компилятор Borland Cross, который может заставить мой Windows-код работать на linux без вина. Я использую winxp с delphi 7. Мне всегда было интересно, можно ли кодировать такие же инструмент I закодирован в Windows, снова в Linux и как можно закодировать тот же инструмент, используя код pascal в linux.ThanksDelphi cross compiler for linux

+2

Вы можете ждать следующий Delphi релиз (Delphi XE3), что, может быть, будет Linux совместим. Дорожная карта EMB не очень понятна, но упоминается Android/linux: http://blogs.embarcadero.com/jtembarcadero/2011/09/17/may-the-roadmap-rise-with-you/ – philnext

ответ

11

Лучшим решением является Lazarus, графический интерфейс Delphi для Free Pascal. Если вы использовали «чистый» VCL, без internales Windows, или каких-либо специальных надстроек миграции будет пайсой пироги :) Посмотрите здесь: http://lazarus.freepascal.org

BTW - Lazarus и FPC истинен mulitplatform - вы можете компилировать код для Linux, Windows, MacOS и т. д. с той же кодовой базой :)

+7

Я загрузил и установил FPC + Lazarus, используя дистрибутив [CodeTyphon] (http://www.pilotlogic.com/sitejoom/index.php/codetyphon). Он предоставил весь исходный код как проекта, так и большинства доступных сторонних библиотек и позволяет компилировать кросс-платформенные IDE из простого в использовании интерфейса. Я был поражен тем, как IDE является зрелой, простой в использовании и мощной. И намного легче Delphi последней IDE (даже с большим количеством компонентов). И компиляция как IDE, так и компилятора из источника (через несколько минут) - это что-то очень очень приятное. Он изменяется от непрозрачности других решений. –

+4

Еще одна IDE с использованием FPC для Windows + Linux - это MSEGUI. От одного человека - вся кросс-платформенная библиотека для написания серьезных бизнес-приложений. Очень активный. Исполняемые файлы легче, чем созданные Lazarus (но вам не хватает компоновки VCL: это целая другая структура). См. Http://gitorious.org/mseide-msegui –

+0

Тем не менее, единственный практический способ использования Lazarus (на мой взгляд) - это «проекты, которые вы начинаете с нуля» - перенос нетривиального приложения Delphi для использования Lazarus + LCL сейчас не практично, по крайней мере, когда я это пробовал. Это долгий путь от «создания оконного кода на Linux» без WINE, чего хочет OP, а это, по сути, мечта. –

5

Ваш единственный вариант, если вы хотите использовать кросс-компилятор Borland Delphi, - это CrossKylix. Это не настоящий кросс-компилятор. Вместо этого вы запускаете компилятор Kylix для Linux под эмулируемой средой Linux.

Обратите внимание, что вы будете вынуждены использовать CLX, а не VCL, и что Kylix хорошо и по-настоящему мертв в наши дни. Лично я думаю, что Вино, вероятно, проще и лучше.

+0

Последнее обновление, похоже, с 31 июля 2010 года. Delphi не кажется хорошей альтернативой для создания кросс-компиляции приложений, делает ли это @David? – karlphillip

+0

@karlphillip Ну, это хорошо для Mac, и мы ожидаем обновления Linux-компилятора через пару лет. Но, как я уже сказал, Кайлик - это камень холодный. –

+0

Я не знал, что это хорошо для Mac. Наверное, я слишком долго выходил из цикла. Спасибо – karlphillip

2

Прежде всего, все зависит от того, какие системные функции вы использовали в своей программе. В большинстве случаев не будет возможности перекрестно скомпилировать его под Linux.

Но в некоторых случаях Borland Kylix может помочь, но, афайк, он почти мертв.