FPC JVM/ru: what changed
Revision 3 to 4. Removed lines have a minus sign; added lines have a plus sign.
| Old | New | Line | |
|---|---|---|---|
| 1 | 1 | # Обзор | |
| 2 | 2 | ||
| 3 | 3 | FPC-backend для [виртуальной машины Java (JVM)](http://ru.wikipedia.org/wiki/Java_Virtual_Machine) генерирует байт-код ява, соответствующий JDK спецификации версии 1.5 (и более поздних версий). На настоящий момент поддерживаются не все возможности языка FPC, но наибольшая часть поддерживается (или будет добавлена в будущем). Команда разработчиков сделала всё возможное, чтобы не вносить каких-либо дополнительных изменений в язык с поддержкой Ява платформы. | |
| 4 | 4 | ||
| 5 | 5 | Эта реализация FPC JVM backend никак не связана с проэктом [Project Cooper](http://www.remobjects.com/cooper.aspx) от RemObjects, и никак не поддерживает язык Oxygene. | |
| 6 | 6 | ||
| 7 | 7 | # Сборки | |
| 8 | 8 | ||
| 9 | 9 | Сборки компилятора (svn r19598, 2011/11/07) указаны ниже. Это кросс-компиляторы, которые работают под указанные системы и компилируют в ява-код. Создаваемый ява-код никаким образом к системам не привязан. | |
| 10 | 10 | ||
| 11 | 11 | Инструкция по установке: | |
| 12 | 12 | ||
| 13 | 13 | - распакуйте архив | |
| 14 | 14 | - измените fpc.cfg (*bin\fpc.cfg* (Windows), *etc/fpc.cfg* (other platforms)) находящийся в архиве так, чтобы он указывал на директорию, в которой находятся распакованные файлы; | |
| 15 | 15 | - для компиляции используйте ppcjvm | |
| 16 | 16 | ||
| 17 | 17 | Тестовые проекты, которые использовались во время разработки, можно найти здесь: <http://svn.freepascal.org/svn/fpc/branches/jvmbackend/tests/test/jvm> | |
| 18 | 18 | ||
| 19 | 19 | - Ссылки на готовые сборки: | |
| 20 | 20 | - [Windows](http://sourceforge.net/projects/freepascal/files/JVM/2.7.1-r19830-snapshot3/fpcjvmwin32-snapshot3.zip/download) (i386) ([зеркало](ftp://ftp.freepascal.org/pub/fpc/contrib/jvm/fpcjvmwin32-snapshot3.zip)) | |
| 21 | 21 | - [Mac OS X](http://sourceforge.net/projects/freepascal/files/JVM/2.7.1-r19830-snapshot3/fpcjvmmacosx-snapshot3.tbz/download) (universal binary, Mac OS X 10.5 or later) ([зеркало](ftp://ftp.freepascal.org/pub/fpc/contrib/jvm/fpcjvmmacosx-snapshot3.tbz)) | |
| 22 | 22 | - [Linux](http://sourceforge.net/projects/freepascal/files/JVM/2.7.1-r19830-snapshot3/fpcjvmlinux-snapshot3.tbz/download) (i386) ([зеркало](ftp://ftp.freepascal.org/pub/fpc/contrib/jvm/fpcjvmlinux-snapshot3.tbz)) | |
| 23 | 23 | ||
| 24 | 24 | Если интересующая вас система не представлена или вас интересует непосредственно сборка компилятора/rtl, то в отдельном архиве представлены только используемые Ява-компоненты (Jasmin, javapp, BCEL) . Инструкции по сборке приведены ниже. | |
| 25 | 25 | ||
| 26 | 26 | - [FPC JVM utilities](ftp://ftp.freepascal.org/pub/fpc/contrib/jvm/fpcjvmutilities.zip) (этот файл вам **НЕ** нужен, если вы уже скачали один из файлов, указанный выше) | |
| 27 | 27 | ||
| 28 | 28 | # Пример | |
| 29 | 29 | ||
| 30 | 30 | ## Компиляция | |
| 31 | 31 | ||
| 32 | 32 | Пример можно скачать <http://svn.freepascal.org/svn/fpc/branches/jvmbackend/tests/test/jvm/trange1.pp> | |
| 33 | 33 | ||
| 34 | - | ||
| 34 | + | ```text | |
| 35 | + | ppcjvm -O2 -g trange1 | |
| 36 | + | ``` | |
| 35 | 37 | ||
| 36 | 38 | ## Запуск в Windows | |
| 37 | 39 | ||
| 38 | 40 | *Note: the path to the units has changed since the previous snapshots!* | |
| 39 | 41 | ||
| 40 | - | ||
| 42 | + | ```text | |
| 43 | + | java -cp C:\full\path\to\fpcjvm\units\jvm-java\rtl;. trange1 | |
| 44 | + | ``` | |
| 41 | 45 | ||
| 42 | 46 | Замените *'C:\full\path\to\fpcjvm\units\jvm-java\rtl* на полный путь к директории *units\jvm-java\rtl* распакованную из архива сборки. | |
| 43 | 47 | ||
| 44 | 48 | ## Запуск в Unix системах | |
| 45 | 49 | ||
| 46 | 50 | *Note: the path to the units has changed since the previous snapshots!* | |
| 47 | 51 | ||
| 48 | - | ||
| 52 | + | ```text | |
| 53 | + | java -cp /full/path/to/fpcjvm/units/jvm-java/rtl:. trange1 | |
| 54 | + | ``` | |
| 49 | 55 | ||
| 50 | 56 | Замените */full/path/to/fpcjvm/units/jvm-java/rtl* на полный путь к директории *units/jvm-java/rtl* распакованную из архива сборки. | |
| 51 | 57 | ||
| 52 | 58 | ## Подробности | |
| 53 | 59 | ||
| 54 | 60 | Смотри [[FPC JVM/Usage|usage information]] для дополнительной информации. | |
| 55 | 61 | ||
| 56 | 62 | # Дополнительная информация | |
| 57 | 63 | ||
| 58 | 64 | - [[FPC JVM/Usage|Особенности использования]] | |
| 59 | 65 | - [[FPC JVM/Language/ru|Поддерживаемые конструкции языка]] | |
| 60 | 66 | - [[FPC JVM/Debugging|Помощь по отладке Ява-паскаля]] | |
| 61 | 67 | - [[FPC JVM/Building|Сборка компилятора и Ява утилит]] | |
| 62 | 68 | - [[FPC JVM/Internals/ru|Информация о внутренних изменениях в компиляторе и RTL]] (представляет интерес для разработчиков компилятора и/или RTL) | |
| 63 | 69 | ||
| 64 | 70 | --- | |
| 65 | 71 | *From the Free Pascal wiki, page "FPC JVM/ru", as it stood on 2015-05-14 after a change by FTurtle, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).* | |
| 66 | 72 | Category: FPC/ru | |
| 67 | 73 | Category: JVM/ru | |
| 68 | 74 | Category: Russian |
