(ReactOS Wiki) RBuild

ReactOS Team, “(ReactOS Wiki) RBuild”, public translation into Russian from English More about this translation.

See also 73 similar translations

Translate into another language.

Participants

evilslon619 points
unxed21 points
uzver20 points
And others...
Join Translated.by to translate! If you already have a Translated.by account, please sign in.
If you do not want to register an account, you can sign in with OpenID.
Pages: ← previous Ctrl next next untranslated
1 2 3

(ReactOS Wiki) RBuild

(ReactOS Wiki) RBuild

History of edits (Latest: evilslon 2 years, 1 month ago) §

'''work in progress by Z98'''

'''статья дорабатывается пользователем Z98'''

History of edits (Latest: evilslon 2 years, 1 month ago) §

This is an overview of how to construct an .rbuild file, which is useful when writing one from scratch. For a general reference of the options available to you when writing RBuild files, see the [[RBuild File Reference]].

В этом обзоре речь пойдёт о создании с нуля файла .rbuild. Для получения общей информации о возможностях, доступных при создании файлов RBuild, перейдите по ссылке [[Файлы RBuild]].

History of edits (Latest: unxed 2 years, 1 month ago) §

If you have another program that you wish to compile into ReactOS, you will need the source code as well as create an rbuild config file for it. In this example, we will assume that the program is called foo. The order in which I explain the various options are the order they technically should be in when you create an .rbuild file.

Если у вас имеется программа, которую вы хотите скомпилировать в ReactOS, вам потребуется её исходный код. Кроме того, необходимо будет создать для него конфигурационный файл rbuild. В этом примере мы предположим, что программа называется Foo. Описание опций будет вестись в том порядке, в котором они должны следовать в файле .rbuild.

History of edits (Latest: seven_ro 2 years, 1 month ago) §

— для неё - программы? или для него - кода? склоняюсь к первому. unxed

— Согласен :) evilslon

Each .rbuild file is an XML document, so should begin with the '''xml''' tag and a reference to the DTD. The path to the DTD will vary depending on whereabouts in the source tree your code is. An example:

Файлы .rbuild представляет собой документ XML, поэтому он должен начинаться с тега '''xml''' и ссылки на DTD. Путь к DTD зависит от расположения у вас дерева исходного кода. Например:

History of edits (Latest: shorewall 2 years, 1 month ago) §

<?xml version="1.0"?>

<?xml version="1.0"?>

History of edits (Latest: evilslon 2 years, 1 month ago) §

<!DOCTYPE module SYSTEM "../../../tools/rbuild/project.dtd">

<!DOCTYPE module SYSTEM "../../../tools/rbuild/project.dtd">

History of edits (Latest: evilslon 2 years, 1 month ago) §

Following this, you define a new module (executable). For type, you have the option of using:

Далее, вы задаёте тип нового модуля (исполняемого файла). Имеются следующие варианты:

History of edits (Latest: evilslon 2 years, 1 month ago) §

* win32cui (console application)

* win32cui (консольное приложение)

History of edits (Latest: evilslon 2 years, 1 month ago) §

* win32gui (Windows application)

* win32gui (приложение Windows)

History of edits (Latest: evilslon 2 years, 1 month ago) §

* win32ocx (OLE custom control)

* win32ocx (нестандартные элементы управления OLE)

History of edits (Latest: evilslon 2 years, 1 month ago) §

* win32dll (Dynamic Linked Libraries)

* win32dll (динамически подключаемые библиотеки)

History of edits (Latest: evilslon 2 years, 1 month ago) §

* objectlibrary (statically-linked library)

* objectlibrary (статически подключаемые библиотеки)

History of edits (Latest: evilslon 2 years, 1 month ago) §

* exportdriver (drivers that export public symbols)

* exportdriver (драйверы, экспортирующие общие символы)

History of edits (Latest: evilslon 2 years, 1 month ago) §

* kernelmodedriver (.sys driver)

* kernelmodedriver (драйвер .sys)

History of edits (Latest: evilslon 2 years, 1 month ago) §

Another option that could be added is unicode="true/false". If you are compiling a driver you should also add entrypoint="DriverEntry@8".

Есть ещё параметр, который вы можете добавить, это unicode="true/false". Также, если вы компилируете драйвер, то вы должны указать точку входа:
entrypoint="DriverEntry@8".

History of edits (Latest: unxed 2 years, 1 month ago) §

<module name="foo" type="win32gui" installname="foo.exe" allowwarnings="true">

<module name="foo" type="win32gui" installname="foo.exe" allowwarnings="true">

History of edits (Latest: evilslon 2 years, 1 month ago) §

This line is only needed if you're trying to export functions. This is most frequently used in DLLs, in which case your file would be located in something like /dll/*/foo. Drivers sometimes also export functions.

Следующая строка потребуется, только если вам будет необходимо экспортировать функции. Это чаще всего используется в DLL, в этом случае ваш файл должен находиться в папке вроде /dll/*/foo. Драйверы иногда тоже экспортируют функции.

History of edits (Latest: evilslon 2 years, 1 month ago) §

<importlibrary definition="foo.def" />

<importlibrary definition="foo.def" />

History of edits (Latest: evilslon 2 years, 1 month ago) §

This line is only needed if you need some special header that are not located in the base include directories. Otherwise you don't need to add it in.

Следующая строка потребуется только в том случае, если вам необходим нестандартный заголовок, который размещён в другой директории, а не в директории вашего кода. В ином случае, добавлять его в файл не нужно.

History of edits (Latest: evilslon 2 years, 1 month ago) §

<include base="namedir">actualdir</include>

<include base="namedir">actualdir</include>

History of edits (Latest: evilslon 2 years, 1 month ago) §

With this, you can do something like #include "namedir/foo.h".

Как вариант, вы можете добавить что-то вроде #include "namedir/foo.h".

History of edits (Latest: evilslon 2 years, 1 month ago) §

This statement is the same as a #define in your source code. Using this will make it a global for all files.

Этот оператор равнозначен #define в вашем исходном коде. Использование его делает возможным использование вашего заголовка для всех файлов.

History of edits (Latest: evilslon 2 years, 1 month ago) §
Pages: ← previous Ctrl next next untranslated
1 2 3

License: FDL