From OpenSCADAWiki
Процедура создания нового внешнего модуля на основе шаблона во многом похожа на предыдущую процедуру и включает в себя шаги:
- 1. Получение исходных текстов проекта OpenSCADA. Для внешнего модуля в качестве источника шаблона можно использовать любые исходные файлы OpenSCADA версии более 0.9 поскольку из них нужно скопировать только директорию "=Tmpl=" и несколько файлов для сборки.
- 2. Копирование директории шаблона с именем нового модуля "NewMod" (например, для подсистемы "БД"). Создание и копирование нужных файлов для внешнего модуля. В дальнейшем информационные файлы проекта "COPYING", "NEWS", "README", "AUTHORS" и "ChangeLog" нужно заполнить согласно сути нового модуля.
- $ cp -r OpenSCADA/src/moduls/bd/=Tmpl= NewMod
- $ touch NewMod/{NEWS,README,AUTHORS,ChangeLog}
- $ cp OpenSCADA/I18N.mk NewMod/
- 3. Редактирование информации о модуле в файле "module.cpp", аналогично этому пункту предыдущего раздела.
- 4. Редактирование конфигурации сборки модуля в файле "Makefile.am", аналогично этому пункту предыдущего раздела, кроме:
# вместо "db_NewMod_la_LDFLAGS = -module -avoid-version $(top_builddir)/src/liboscada.la" db_NewMod_la_LDFLAGS = -module -avoid-version # Вместо "include ../../../../I18N.mk" include I18N.mk
- 5. Редактирование файла конфигурации сборочной системы "configure.ac":
- "AC_INIT([DB.Tmpl],[0.0.1],[my@email.org])" — информация о модуле: имя, версия и email проекта.
- "AM_CONDITIONAL([TmplIncl],[test])" — AM_CONDITIONAL([NewModIncl],[test])
- 6. Установка пакета разработки OpenSCADA. Ввиду того, что модуль внешний и исходные файлы OpenSCADA нужны только на первом этапе создания модуля, необходимо установить пакет разработки OpenSCADA (openscada-devel), который содержит заголовочные файлы и библиотеки.
- 7. Теперь новый модуль можно собрать, после формирования сборочной системы:
- $ autoreconf -if
- $ ./configure
- $ make