При переходе с Windows на Linux-платформу API nanoCAD остается неизменным, сборку приложений нужно по-прежнему выполнять на Windows, а на Linux вместо инсталлятора .msi следует создать .deb- или .rpm-пакет.

В качестве примера выполним адаптацию приложения «Примеры SDK для nanoCAD 23.1» для работы на Linux. Сборку приложения начнем на Windows, для чего разместим nanoCAD SDK по адресу C:\SDK. Для сборки примеров достаточно выполнить файл \SDK\samples\BuildAllSamples.bat. Одним из результатов сборки является MSI-инсталлятор C:\SDK\samples\bin-x64\Installer\Release\ru-RU\SamplesAppSimple.msi.

Файл SamplesAppSimple.msi является примером дистрибутива для распространения по рабочим местам приложений под nanoCAD. В режиме «Приложение» установщик выполняет следующие действия:

  • записывает на компьютер файлы приложений в C:\Program Files\Nanosoft\Примеры SDK для nanoCAD 23.1\;
  • добавляет ярлык на рабочий стол. Путь, указанный в ярлыке: "C:\Program Files\Nanosoft\nanoCAD x64 23.1\nCad.exe" -r SamplesApp -g "C:\Program Files\Nanosoft\Примеры SDK для nanoCAD 23.1\NCADx64.package".

При запуске ярлыка выполняется стартовая конфигурация, которая добавляет в Платформу nanoCAD новые пункты меню (рис. 1).

Рис. 1 Рис. 1

Шаг 1. Ручной перенос приложения и его загрузка в Linux nanoCAD (только в режиме приложения, ярлык).

Приведенный ниже пример описывает портирование Windows-приложений в среду Astra Linux 1.7 с установленной Платформой nanoCAD 23.1; перенос приложений, входящих в MSI-установщик, и создание ярлыка для запуска.

  1. Подготовить в среде Linux место для хранения файлов. Например: $ sudo mkdir /opt/nanosoft/ncad23-sdk-samples/

  2. Любым доступным способом (flash-накопитель, сетевая папка, облако, shared-папка) скопировать все файлы приложения с Windows-платформы на Linux в созданную на предыдущем шаге папку.

    Откуда:

    C:\Program Files\Nanosoft\Примеры SDK для nanoCAD 23.1\

    Куда:

    /opt/nanosoft/ncad23-sdk-samples/

    Результат должен выглядеть так:

    /opt/nanosoft/ncad23-sdk-samples/HelloHost.dll

    /opt/nanosoft/ncad23-sdk-samples/HelloNRX.nrx

    /opt/nanosoft/ncad23-sdk-samples/NCADSDK.cfg

    /opt/nanosoft/ncad23-sdk-samples/NCADx64.package

    и другие файлы.

  3. Скопировать файл-ярлык C:\SDK\samples\Installer\Linux\SamplesApp.desktop в /opt/nanosoft/ncad23-sdk-samples/.

    Далее все операции выполняются на Linux-платформе.

  4. Подготовить универсальный файл-ярлык. Ярлык для Linux расположен в C:\SDK\samples\Installer\Linux\SamplesApp.desktop. Он содержит следующую строку запуска: Exec=/usr/bin/ncad -r SamplesApp -g "/opt/nanosoft/ncad23-sdk-samples/NCADx64.package" %F

    Аналогичный Windows-ярлык содержит следующую строку запуска: "C:\Program Files\Nanosoft\nanoCAD x64 23.1\nCad.exe" -r SamplesApp -g "C:\Program Files\Nanosoft\Примеры SDK для nanoCAD 23.1\NCADx64.package"

    В общем случае нужно указать портируемое приложение вместо пакетного файла NCADx64.package. Могут использоваться. package, .dll, .nrx и другие виды приложений.

  5. Чтобы добавить ярлык на рабочий стол, нужно файл SamplesApp.desktop разместить в /usr/share/applications/flydesktop.
  6. Чтобы добавить ярлык в меню Пуск, нужно файл SamplesApp.desktop разместить по пути /usr/share/applications/flystartmenu/.

    В общем случае для других Linux ОС нужно разместить ярлык по пути /usr/share/applications.

  7. Запустить Платформу через созданный ярлык; убедиться, что меню и команды добавились и работают.

Шаги 2 (создание deb-пакета с дистрибутивом приложения) и 3 (создание rpm-пакета с дистрибутивом приложения) описывают процесс создания дистрибутивов в виде deb- и rpm-пакетов. Они подробно представлены в документации к SDK (см. SDK\docs). Загрузить комплект SDK можно по ссылке.

Сергей Евсеев,
специалист группы поддержки API
ООО «Нанософт разработка»