Difference between revisions of "FPC JVM/ru"

From Free Pascal wiki
Jump to navigationJump to search
(New page: {{FPC JVM}} =Overview= The FPC backend for the Java Virtual Machine (JVM) generates Java byte code that conforms to the specifications of the JDK 1.5 (and later). While not all FPC langua...)
 
m (categories)
 
(18 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
{{FPC JVM}}
 
{{FPC JVM}}
=Overview=
+
=Обзор=
  
The FPC backend for the Java Virtual Machine (JVM) generates Java byte code that conforms to the specifications of the JDK 1.5 (and later). While not all FPC language features work when targeting the JVM, most do (or will in the future) and we have done our best to introduce as few differences as possible.
+
FPC-backend для [http://ru.wikipedia.org/wiki/Java_Virtual_Machine виртуальной машины Java (JVM)] генерирует байт-код ява, соответствующий JDK спецификации версии 1.5 (и более поздних версий). На настоящий момент поддерживаются не все возможности языка FPC, но наибольшая часть поддерживается (или будет добавлена в будущем). Команда разработчиков сделала всё возможное, чтобы  не вносить каких-либо дополнительных изменений в язык с поддержкой Ява платформы.
  
This FPC JVM backend is not related to [http://www.remobjects.com/cooper.aspx Project Cooper] by RemObjects, nor does FPC now support the Oxygene language.
+
Эта реализация FPC JVM backend никак не связана с проэктом [http://www.remobjects.com/cooper.aspx Project Cooper] от RemObjects, и никак не поддерживает язык Oxygene.
  
=Snapshots=
+
=Сборки=
You can find compiled snapshots of the initial version below (svn r18783, 2011/08/20). These are cross-compilers from the mentioned platform to the JVM. The generated code is not specific to the JVM running on that particular platform.
+
Сборки компилятора  (svn r19598, 2011/11/07) указаны ниже. Это кросс-компиляторы, которые работают под указанные системы и компилируют в ява-код. Создаваемый ява-код никаким образом к системам не привязан.
  
Installation instructions: unpack the archive file, adjust the path in the unpacked ''bin\fpc.cfg'' (Windows) or ''etc/fpc.cfg'' (other platforms) so it points to the directory where you unpacked the file, and use the included ''ppcjvm'' compiler to compile sources. A number of test files used during development of the JVM backend can be found at http://svn.freepascal.org/svn/fpc/branches/jvmbackend/tests/test/jvm
+
Инструкция по установке:
 +
* распакуйте архив
 +
* измените fpc.cfg (''bin\fpc.cfg'' (Windows), ''etc/fpc.cfg'' (other platforms)) находящийся в архиве так, чтобы он указывал на директорию, в которой находятся распакованные файлы;
 +
* для компиляции используйте ppcjvm  
 +
Тестовые проекты, которые использовались во время разработки, можно найти здесь: http://svn.freepascal.org/svn/fpc/branches/jvmbackend/tests/test/jvm
  
* Snapshot download links
+
* Ссылки на готовые сборки:
** [http://sourceforge.net/projects/freepascal/files/JVM/2.7.1-r18783-snapshot1/fpcjvmwin32-snapshot1.zip/download Windows] (i386) ([ftp://ftp.freepascal.org/pub/fpc/contrib/jvm/fpcjvmwin32-snapshot1.zip slower mirror])
+
** [http://sourceforge.net/projects/freepascal/files/JVM/2.7.1-r19830-snapshot3/fpcjvmwin32-snapshot3.zip/download Windows] (i386) ([ftp://ftp.freepascal.org/pub/fpc/contrib/jvm/fpcjvmwin32-snapshot3.zip зеркало])
** [http://sourceforge.net/projects/freepascal/files/JVM/2.7.1-r18783-snapshot1/fpcjvmmacosx-snapshot1.tbz/download Mac OS X] (universal binary, Mac OS X 10.5 or later) ([ftp://ftp.freepascal.org/pub/fpc/contrib/jvm/fpcjvmmacosx-snapshot1.tbz slower mirror])
+
** [http://sourceforge.net/projects/freepascal/files/JVM/2.7.1-r19830-snapshot3/fpcjvmmacosx-snapshot3.tbz/download Mac OS X] (universal binary, Mac OS X 10.5 or later) ([ftp://ftp.freepascal.org/pub/fpc/contrib/jvm/fpcjvmmacosx-snapshot3.tbz зеркало])
** [http://sourceforge.net/projects/freepascal/files/JVM/2.7.1-r18783-snapshot1/fpcjvmlinux-snapshot1.tbz/download Linux] (i386) ([ftp://ftp.freepascal.org/pub/fpc/contrib/jvm/fpcjvmlinux-snapshot1.tbz slower mirror])
+
** [http://sourceforge.net/projects/freepascal/files/JVM/2.7.1-r19830-snapshot3/fpcjvmlinux-snapshot3.tbz/download Linux] (i386) ([ftp://ftp.freepascal.org/pub/fpc/contrib/jvm/fpcjvmlinux-snapshot3.tbz зеркало])
  
If your platform is not listed above, or if you are only interested in building the compiler/rtl from source, a separate archive that only contains the compiled Java components (Jasmin, javapp, BCEL) is also available. Building instructions are listed below.
+
Если интересующая вас система не представлена или вас интересует непосредственно сборка компилятора/rtl, то в отдельном архиве представлены только используемые Ява-компоненты (Jasmin, javapp, BCEL) . Инструкции по сборке приведены ниже.
* [ftp://ftp.freepascal.org/pub/fpc/contrib/jvm/fpcjvmutilities.zip FPC JVM utilities] (you do '''not''' need this if you already downloaded one of the files above)
+
* [ftp://ftp.freepascal.org/pub/fpc/contrib/jvm/fpcjvmutilities.zip FPC JVM utilities] (этот файл вам '''НЕ''' нужен, если вы уже скачали один из файлов, указанный выше)
  
=More information=
+
=Пример=
 +
==Компиляция==
  
* [[FPC_JVM/Usage|Basic usage information]]
+
Пример можно скачать http://svn.freepascal.org/svn/fpc/branches/jvmbackend/tests/test/jvm/trange1.pp
* [[FPC_JVM/Language|Supported language constructs and other programming information]]
+
 
* [[FPC_JVM/Debugging|Help with debugging the Java class files]]
+
  ppcjvm -O2 -g trange1
* [[FPC_JVM/Building|Building the compiler and Java utilities from source]]
+
 
* [[FPC_JVM/Internals|Information about internal changes to the compiler and RTL]] (mainly interesting to compiler/RTL developers)
+
==Запуск в Windows==
 +
 
 +
''Note: the path to the units has changed since the previous snapshots!''
 +
 
 +
  java -cp C:\full\path\to\fpcjvm\units\jvm-java\rtl;. trange1
 +
 
 +
Замените '''C:\full\path\to\fpcjvm\units\jvm-java\rtl'' на полный путь к директории ''units\jvm-java\rtl'' распакованную из архива сборки.
 +
 
 +
==Запуск в Unix системах==
 +
 
 +
''Note: the path to the units has changed since the previous snapshots!''
 +
 
 +
  java -cp /full/path/to/fpcjvm/units/jvm-java/rtl:. trange1
 +
 
 +
Замените ''/full/path/to/fpcjvm/units/jvm-java/rtl'' на полный путь к директории ''units/jvm-java/rtl'' распакованную из архива сборки.
 +
 
 +
==Подробности==
 +
 
 +
Смотри [[FPC_JVM/Usage|usage information]] для дополнительной информации.
 +
 
 +
=Дополнительная информация=
 +
 
 +
* [[FPC_JVM/Usage|Особенности использования]]
 +
* [[FPC_JVM/Language/ru|Поддерживаемые конструкции языка]]
 +
* [[FPC_JVM/Debugging|Помощь по отладке Ява-паскаля]]
 +
* [[FPC_JVM/Building|Сборка компилятора и Ява утилит]]
 +
* [[FPC_JVM/Internals/ru|Информация о внутренних изменениях в компиляторе и RTL]] (представляет интерес для разработчиков компилятора и/или RTL)
 +
 
 +
 
 +
{{AutoCategory}}
 +
[[Category:FPC/ru]]
 +
[[Category:JVM/ru]]

Latest revision as of 09:52, 14 May 2015

English (en) русский (ru)

Обзор

FPC-backend для виртуальной машины Java (JVM) генерирует байт-код ява, соответствующий JDK спецификации версии 1.5 (и более поздних версий). На настоящий момент поддерживаются не все возможности языка FPC, но наибольшая часть поддерживается (или будет добавлена в будущем). Команда разработчиков сделала всё возможное, чтобы не вносить каких-либо дополнительных изменений в язык с поддержкой Ява платформы.

Эта реализация FPC JVM backend никак не связана с проэктом Project Cooper от RemObjects, и никак не поддерживает язык Oxygene.

Сборки

Сборки компилятора (svn r19598, 2011/11/07) указаны ниже. Это кросс-компиляторы, которые работают под указанные системы и компилируют в ява-код. Создаваемый ява-код никаким образом к системам не привязан.

Инструкция по установке:

  • распакуйте архив
  • измените fpc.cfg (bin\fpc.cfg (Windows), etc/fpc.cfg (other platforms)) находящийся в архиве так, чтобы он указывал на директорию, в которой находятся распакованные файлы;
  • для компиляции используйте ppcjvm

Тестовые проекты, которые использовались во время разработки, можно найти здесь: http://svn.freepascal.org/svn/fpc/branches/jvmbackend/tests/test/jvm

Если интересующая вас система не представлена или вас интересует непосредственно сборка компилятора/rtl, то в отдельном архиве представлены только используемые Ява-компоненты (Jasmin, javapp, BCEL) . Инструкции по сборке приведены ниже.

  • FPC JVM utilities (этот файл вам НЕ нужен, если вы уже скачали один из файлов, указанный выше)

Пример

Компиляция

Пример можно скачать http://svn.freepascal.org/svn/fpc/branches/jvmbackend/tests/test/jvm/trange1.pp

 ppcjvm -O2 -g trange1

Запуск в Windows

Note: the path to the units has changed since the previous snapshots!

 java -cp C:\full\path\to\fpcjvm\units\jvm-java\rtl;. trange1

Замените 'C:\full\path\to\fpcjvm\units\jvm-java\rtl на полный путь к директории units\jvm-java\rtl распакованную из архива сборки.

Запуск в Unix системах

Note: the path to the units has changed since the previous snapshots!

 java -cp /full/path/to/fpcjvm/units/jvm-java/rtl:. trange1

Замените /full/path/to/fpcjvm/units/jvm-java/rtl на полный путь к директории units/jvm-java/rtl распакованную из архива сборки.

Подробности

Смотри usage information для дополнительной информации.

Дополнительная информация