Портирование Vi с Windows на Linux

Обсуждение программ, пользовательского обеспечения, операционных систем
Ответить
poklad
assistant
assistant
Сообщения: 123
Зарегистрирован: 04 июн 2013, 11:23
Версия LabVIEW: 2012
Контактная информация:

Портирование Vi с Windows на Linux

Сообщение poklad »

Hi All!

Имеется проект, работающий в Labview 2017 под Windows. В проекте используется внешняя библиотека. Функции из этой библиотеки вызываются через .Net.
Сама библиотека написана на Си. Разработчик говорит что есть ее вариант скомпилированный под Linux. Так же говорит что можно перекомпилировать, если линух специфический.
Есть острое желание перевести этот проект под Линукс.
Вопрос такой. Как в Labview под Linux вызывать функции из внешней библиотеки? Есть ли какой то аналог среды .Net?

Jury
Artem.spb

Activity Автор
professor
professor
Сообщения: 3633
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 59 раз
Поблагодарили: 198 раз
Контактная информация:

Re: Портирование Vi с Windows на Linux

Сообщение Artem.spb »

poklad писал(а): 02 дек 2025, 18:30 Есть ли какой то аналог среды .Net?
Есть аналог DLL (Call Library Function Node)
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2305
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 33 раза
Поблагодарили: 34 раза

Re: Портирование Vi с Windows на Linux

Сообщение Borjomy_1 »

Если библиотека написана на C, то ее можно перекомпилировать в .so файл и ее функции вызвать через Call Library Function. Мало того, есть возможность обеспечить кросс-платформенность, если в CLFN указывать не файл "library.dll" и не "library.so", а "library.*" Тогда в среде Windows будет подцепляться библиотека .dll, а если открывать проект под Linux, то подцепится библиотека .so
poklad
assistant
assistant
Сообщения: 123
Зарегистрирован: 04 июн 2013, 11:23
Версия LabVIEW: 2012
Контактная информация:

Re: Портирование Vi с Windows на Linux

Сообщение poklad »

Hi!

Всем спасибо за ответы!
Тогда еще один вопрос.
Можно ли под виндами скомпилировать проект для запуска на Linux?
Сейчас есть более-менее работающий проект непрерывного сбора данных с АЦП. Работает все это на могучей машине под виндами. Из специфичного там работа с библиотекой АЦП и запросы к операционке по поводу загрузки проца, расхода оперативки и свободного места на диске. На пробу я запустил это проект на "дохлом" селероне 8-летней давности, водрузив на него полностью Labview (пытался обойтись только RunTime, но с ходу что то не пошло) . Работает, причем загрузка проца - 50-60%, хотя иногда прыгает до 100, но сбоев вроде не было.
Цель такая - взять маломощный одноплатный комп (в идеале Rasberry) и запускать проект на нем. Формально производительность того селерона на котором я запускал проект и raspberry Pi4 сравнимы.
Я думал использовать тулбокс Hobbyist, который, как я понимаю, является аналогом тулбокса Real Time - т.е. отладка идет на могучей машине, а в конечном итоге все крутиться на хосте под линуксом.
С крейтом PXI и RT Os контроллером я работал.
Это здравая идея? Или можно как то проще?

Jury
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5652
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 35 раз
Поблагодарили: 122 раза

Re: Портирование Vi с Windows на Linux

Сообщение IvanLis »

poklad писал(а): 04 дек 2025, 16:38 Можно ли под виндами скомпилировать проект для запуска на Linux?
Если коротко, то нет :wink:
Особенно с учетом:
poklad писал(а): 04 дек 2025, 16:38 Из специфичного там работа с библиотекой АЦП и запросы к операционке по поводу загрузки проца, расхода оперативки и свободного места на диске.
Библиотека (я так понимаю это драйвер, через который идет взаимодействие с АЦП) есть под Linux?
И не совсем понятно, зачем запросы? Они же тоже грузят как саму систему, так и программу. Их использование позволяет улучшить программу?
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2305
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 33 раза
Поблагодарили: 34 раза

Re: Портирование Vi с Windows на Linux

Сообщение Borjomy_1 »

На Распберри поднимается Дебиан, на нем ставится LabVIEW Runtime под linux. И приложение, скомпилированное на Linux машине можно запускать.
Важно: LabVIEW Pro под Linux не лицензируется напрямую. В отличие, например, от Community. При этом, билдер входит в состав дистрибутива. Вот такая история. Т.е накатываешь pro версию через репозиторий и она... ничего не требует для работы.
На Астре ставили, работает.
poklad
assistant
assistant
Сообщения: 123
Зарегистрирован: 04 июн 2013, 11:23
Версия LabVIEW: 2012
Контактная информация:

Re: Портирование Vi с Windows на Linux

Сообщение poklad »

Hi All!
Библиотека (я так понимаю это драйвер, через который идет взаимодействие с АЦП) есть под Linux?
И не совсем понятно, зачем запросы? Они же тоже грузят как саму систему, так и программу. Их использование позволяет улучшить программу?
АЦП от Lcard-а. У них есть версии библиотеки под какой то линукс, но они сказали, что при необходимости могут ее перекомпилировать под тот который нам нужен.
По поводу мониторинга. Я не заметил, чтобы запросы загрузки процессора + расход оперативки + свободное место на диске раз в 10 секунд хоть как то грузили систему. По крайней мере винды. А для отладки может быть весьма полезно понимать чего не хватает. А свободное место на диске - это просто must have - если оно заканчивается - прогу надо штатно остановить...
На Распберри поднимается Дебиан, на нем ставится LabVIEW Runtime под linux. И приложение, скомпилированное на Linux машине можно запускать.
Я правильно понимаю, что с тулбоксом hobbyist лучше не заморачиваться? А на нормальную машину ставить линукс, лабвью и отлаживать? После чего компилировать.

Jury
FredP
user
user
Сообщения: 75
Зарегистрирован: 19 апр 2020, 01:22
Версия LabVIEW: 2021
Благодарил (а): 7 раз
Поблагодарили: 14 раз
Контактная информация:

Re: Портирование Vi с Windows на Linux

Сообщение FredP »

poklad писал(а): 04 дек 2025, 23:56 Я правильно понимаю, что с тулбоксом hobbyist лучше не заморачиваться? А на нормальную машину ставить линукс, лабвью и отлаживать? После чего компилировать.
У меня есть некоторый опыт по LCARD https://www.lcard.ru/forums/viewtopic.p ... 1529638847 Дело не простое, но все получилось. Hobbyst однозначно в сад, так как там не реализован GUI.
poklad
assistant
assistant
Сообщения: 123
Зарегистрирован: 04 июн 2013, 11:23
Версия LabVIEW: 2012
Контактная информация:

Re: Портирование Vi с Windows на Linux

Сообщение poklad »

Hi!
У меня есть некоторый опыт по LCARD https://www.lcard.ru/forums/viewtopic.p ... 1529638847 Дело не простое, но все получилось. Hobbyst однозначно в сад, так как там не реализован GUI.
Ссылка битая, но топик нашел...
Я не понял про "оболочку вместо .NET". Разве CLFN недостаточно? Как я понял, через эту штуку напрямую вызывается функция из библиотеки, а переменные которые туда передаются или возвращаются прописываются по именам из документации. Это конечно гораздо менее удобно, чем в .NET, когда их выбираешь из списка, но терпимо.
И вопрос по поводу hobbyst. В Real Time, как я понимаю, тоже не было GUI, но была возможность обратиться к панели через WEB. Там на контроллере запускалось что то типа web сервера. В hobbyst такого нет?

Jury
FredP
user
user
Сообщения: 75
Зарегистрирован: 19 апр 2020, 01:22
Версия LabVIEW: 2021
Благодарил (а): 7 раз
Поблагодарили: 14 раз
Контактная информация:

Re: Портирование Vi с Windows на Linux

Сообщение FredP »

Это разные вещи: Desktop linux и Real-time module. Приложения, которые билдятся в этих тулкитах и там и там имеют GUI, но работают на разных рантаймах. В Desktop linux есть поддержка русской локали. Но нет поддержки timed loop, например.

В hobbyst нет веб-сервера. Только GUI в режиме отладки, отображаемые на хост-машине.
ujin1
developer
developer
Сообщения: 260
Зарегистрирован: 06 ноя 2020, 15:37
Версия LabVIEW: 19
Благодарил (а): 19 раз
Поблагодарили: 40 раз
Контактная информация:

Re: Портирование Vi с Windows на Linux

Сообщение ujin1 »

FredP писал(а): 05 дек 2025, 11:30 В hobbyst нет веб-сервера. Только GUI в режиме отладки, отображаемые на хост-машине.
Есть.
Так же есть web socket, web socket security, OPC UA сервер, работа с последовательными портами.

Немного информации по hobbyst
Изображение
FredP
user
user
Сообщения: 75
Зарегистрирован: 19 апр 2020, 01:22
Версия LabVIEW: 2021
Благодарил (а): 7 раз
Поблагодарили: 14 раз
Контактная информация:

Re: Портирование Vi с Windows на Linux

Сообщение FredP »

ujin1 писал(а): 05 дек 2025, 12:49
FredP писал(а): 05 дек 2025, 11:30 В hobbyst нет веб-сервера. Только GUI в режиме отладки, отображаемые на хост-машине.
Есть.
Так же есть web socket, web socket security, OPC UA сервер, работа с последовательными портами.

Немного информации по hobbyst
Мне показалось что TC хотел получить доступ к лицевой панели VI через браузер, раз исполнительный файл не имеет GUI. Ну, что то вроде remote front panels. "такого" веб-сервера нет ;)
ujin1
developer
developer
Сообщения: 260
Зарегистрирован: 06 ноя 2020, 15:37
Версия LabVIEW: 19
Благодарил (а): 19 раз
Поблагодарили: 40 раз
Контактная информация:

Re: Портирование Vi с Windows на Linux

Сообщение ujin1 »

FredP писал(а): 05 дек 2025, 14:51 Мне показалось что TC хотел получить доступ к лицевой панели VI через браузер, раз исполнительный файл не имеет GUI. Ну, что то вроде remote front panels. "такого" веб-сервера нет ;)
Раньше это был доступ через Silverlight. Silverlight не поддерживается.
В новых версиях надо спросить у пользователей есть ли вообще такая функция.
Где-то на этом форуме есть про это тема.
Изображение
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5652
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 35 раз
Поблагодарили: 122 раза

Re: Портирование Vi с Windows на Linux

Сообщение IvanLis »

ujin1 писал(а): 05 дек 2025, 15:23 Где-то на этом форуме есть про это тема.
Web-интерфейс виртуальных приборов в системе LabVIEW
Ответить

Вернуться в «Софт»