При переходе с 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](/upload/image_resize_cache/sprint.editor/9e7/yiko0we57zdqelcctawpqjokmog49j2n-688-537-5.webp)
Шаг 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 можно по ссылке https://developer.nanocad.ru/redmine/projects/ncadsdk/files.
![Первый курс «Информационное моделирование в строительстве» от «Нанософт» и СПбГАСУ собрал более двух тысяч слушателей](/upload/image_resize_cache/iblock/f36/h7u31fz3rst6y0v445eqy5bp1kd3rbaq-400-240-5.webp)
![nanoCAD BIM Вентиляция 24 – новая версия на Платформе nanoCAD](/upload/image_resize_cache/iblock/2d1/1n9q02kt7xydmkhj1wal4bk1gz7vz4x9-400-240-5.webp)
![На VIII Международном BIM-форуме компания «Нанософт» продемонстрировала BIM/ТИМ/СОД-решения для управления строительством и представила планы развития инженерной экосистемы](/upload/image_resize_cache/iblock/949/ya08yimr1bkkm66yslc6cmfpl5ut0e2t-400-240-5.webp)