Поддержка Windows RT

Хотите предложить идею нового плагина или знаете, что улучшить в существующем? Пишите сюда.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Поддержка Windows RT

Post by DrKnS »

Latest post of the previous page:

usa wrote: Thu 04 Nov, 2021 08:52 Ну ведь есть такая Винда, есть машины с ней, почему бы не компилировать под них, если изменения минимальны?
Почему - написано на предыдущей странице.
Выше есть всё необходимое для этого.
"Я открыл солюшен и накликал мышкой еще одну платформу" - это не совсем "все необходимое".
Вы собрали lua в VS, но, насколько я в курсе, это приведет к падениям при использовании FFI в скриптах из-за ABI. Чтобы все было кошерно, надо, чтобы в зависимостях была msvcrt.dll, а для этого надо собирать в mingw.

Кроме того, как вы правильно подметили, есть netbox, который может быть собирается под ARM, а может быть и нет, надо проверять.
А еще есть colorer, у которого вообще отдельный мейнтейнер.

В итоге имеем, что кто-то должен сесть и потратить несколько дней своего времени, чтобы из "готово на 80%" получить "готово на 100%".
И ради чего это все? Как выше отмечено, ARM-версией интересовались 2 человека за 8 лет (с вами - 3 за 9).

Если у вас есть устройство, есть VS, есть умение и желание - делайте пулл-реквесты, мы их с удовольствием примем. Но не стоит ожидать, что оно как-то само образуется.

То, что выше, я закоммитил.
Shmuel
Posts: 6836
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Поддержка Windows RT

Post by Shmuel »

DrKnS wrote: Thu 04 Nov, 2021 16:33 Вы собрали lua в VS, но, насколько я в курсе, это приведет к падениям при использовании FFI в скриптах из-за ABI. Чтобы все было кошерно, надо, чтобы в зависимостях была msvcrt.dll, а для этого надо собирать в mingw.
Поскольку собран стандартный Lua (а не LuaJIT), то FFI вообще не будет.
Поддержка внешних DLL-библиотек может быть проблематичной (а может и нет - нужны практические данные), но 95% или больше пользователей Фара ими так или иначе не пользуются, а так LuaMacro будет работать (кроме кастомных сортировок, для которых нужен FFI).

usa, после всех ваших трудов LuaMacro заработал?
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Поддержка Windows RT

Post by DrKnS »

Shmuel wrote: Thu 04 Nov, 2021 18:09 Поскольку собран стандартный Lua (а не LuaJIT), то FFI вообще не будет.
Тогда и статически можно собрать, я правильно понимаю?
Shmuel
Posts: 6836
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Поддержка Windows RT

Post by Shmuel »

DrKnS wrote: Thu 04 Nov, 2021 18:45 Тогда и статически можно собрать, я правильно понимаю?
Могу предложить попробовать это на практике. Приложен батч из дистрибутива Lua 5.1. Покажите мне, что в нём надо изменить для статической сборки, я соберу и какое-то время погоняю на своей системе.
luavs.bat.7z
(628 Bytes) Downloaded 90 times
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Поддержка Windows RT

Post by DrKnS »

Shmuel wrote: Thu 04 Nov, 2021 19:03 что в нём надо изменить для статической сборки

Code: Select all

- @set MYCOMPILE=cl /nologo /MD /O2 /W3 /c /D_CRT_SECURE_NO_DEPRECATE
+ @set MYCOMPILE=cl /nologo /MT /O2 /W3 /c /D_CRT_SECURE_NO_DEPRECATE
Shmuel
Posts: 6836
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Поддержка Windows RT

Post by Shmuel »

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

P.S. А что надо изменить в батнике, чтобы PDB собрался?
Last edited by Shmuel on Thu 04 Nov, 2021 19:56, edited 1 time in total.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Поддержка Windows RT

Post by DrKnS »

Shmuel wrote: Thu 04 Nov, 2021 19:51 А что надо изменить в батнике, чтобы PDB собрался?
Должно быть достаточно добавить /Zi в MYCOMPILE и /debug в MYLINK.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Поддержка Windows RT

Post by DrKnS »

Там первый CI build для ARM64.
Это форк. Архив Far.Release.ARM64 внизу страницы.
Так как мне проверять не на чем, а dll, добавленные в git, останутся в нем навсегда, я пушну это в мастер только после явного подтверждения от @usa или любого другого обладателя ARM64, что оно действительно работает.
Желательно в виде скриншота процесса записи макроса (Ctrl+. два раза) с погашенными панелями, чтобы было видно версию.
Shmuel
Posts: 6836
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Поддержка Windows RT

Post by Shmuel »

DrKnS, нашёл макрос, вызывающий падение, сразу либо на последующих операциях. Но тревога была ложная, виновата внешняя библиотека (т.е падение происходит и с родной lua51.dll). Когда-то этот макрос работал, но очень давно его не запускал.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Поддержка Windows RT

Post by DrKnS »

Мда. Как я вижу, тема настолько актуальна, что даже уже готовое запустить и проверить некому.
Все приходится делать самому :facepalm:
Attachments
arm64.png
usa
Posts: 16
Joined: Mon 01 Nov, 2021 20:51
Has thanked: 1 time

Поддержка Windows RT

Post by usa »

Мерси! Я очень не хотел региться на GitHub, но, по-видимому, придётся :(
usa
Posts: 16
Joined: Mon 01 Nov, 2021 20:51
Has thanked: 1 time

Поддержка Windows RT

Post by usa »

DrKnS wrote: Thu 04 Nov, 2021 16:33 Кроме того, как вы правильно подметили, есть netbox
Давайте я пробую его собрать, а вы мне поможете советами?
Кроме очевидного добавления платформы, я придумал вот такие изменения (см. netbox.diff).
Остановился на ошибке:
image.png
image.png (10.72 KiB) Viewed 2047 times
Вместо build\vc10\NetBox\Release\ARM64 сборка создаётся в src\NetBox\ARM64\Release. Я не нашёл, где это описано.
DrKnS wrote: Thu 04 Nov, 2021 20:09 я пушну это в мастер только после явного подтверждения от @usa или любого другого обладателя ARM64
Я так понимаю, уже поздно? Мне удалось успешно записать и вопроизвести макро "Hello, world!<Enter>".
DrKnS wrote: Fri 05 Nov, 2021 03:52 Все приходится делать самому
Я не включал оповещения, сейчас включу. Простите.
Attachments
netbox.diff.zip
(1.63 KiB) Downloaded 105 times
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Поддержка Windows RT

Post by DrKnS »

usa, netbox для дистрибутива собирается вот этим action: https://github.com/FarGroup/Far-NetBox/ ... elease.yml, в котором, как видите, cmake.
sln & vcxproj, видимо, использовались только для отладки и, возможно, где-то уже устарели.
Пути, видимо, отличаются по этой же причине.
Давайте сначала попробуем добавить платформу в этот action, а sln & vcxproj поправим (и обновим) уже потом.
Насколько я понимаю, libtinyxml2.lib нет в репозитории и она должна создаваться автоматически в процессе сборки.
А вот какие-то библиотеки openssl в репозитории зачем-то есть. Возможно, их надо будет собрать и добавить вручную.
usa wrote: Fri 05 Nov, 2021 17:03 Я так понимаю, уже поздно?
Да, я уже сам проверил и закоммитил. Вроде бы все работает.
Архивы доступны там, как artifacts, вроде бы в течении 90 дней.
Если получится с netbox и colorer (@ctapmex?) - можно будет выкладывать более официально.
User avatar
ctapmex
Posts: 1241
Joined: Fri 11 Apr, 2008 07:53
Has thanked: 1 time
Been thanked: 50 times

Поддержка Windows RT

Post by ctapmex »

DrKnS wrote: Fri 05 Nov, 2021 17:49 colorer (@ctapmex?)
собрать пол беды, как протестировать? скриншот выше с железки или какая то эмуляция?
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Поддержка Windows RT

Post by DrKnS »

ctapmex wrote: Fri 05 Nov, 2021 19:37 какая то эмуляция?
qemu.
usa
Posts: 16
Joined: Mon 01 Nov, 2021 20:51
Has thanked: 1 time

Поддержка Windows RT

Post by usa »

У меня на Raspberry Pi нативно
Post Reply

Return to “Предложения и идеи”