А хочется обсудить вот что: все плагины лежат в одном репозитории, и это было нормально для svn (где checkout можно сделать для любой папки), но уже не очень удобно для git (где принято форкать репозитории целиком).
Плагины между собой никак не связаны, не лучше ли разместить каждый в отдельном репозитории?
evil-programmers
Posted: Fri 19 May, 2017 11:33
by Dennis_Moore
Чем посоветуете собирать плагины с evil-programmers ? MinGW похоже мертв (хотя по прямой ссылке все качается, люди пишут что это проблемы sourceforge):
Об этом порте я знаю, но MinGW и MinGW-w64 два разных проекта по переносу GCC на Windows и судя по активности и этой проблеме первый таки помер.
Т.е. для сборки ставлю MinGW-w64 (да, какую ветку взять и тип исключений?), распаковываю в /bin re2c-0.13.5-bin.zip (можно новее или именно этот?), а дальше три mingw32-make команды из инструкции ?
Интересно, инсталлятор (mingw-w64-install.exe) выдает "Cannot download repository.txt" хотя раньше ставил все работало. Может и первый MinGW не ставится потому как сегодня у sourceforge проблемы ?
А чем конкретно сами разработчики собирают плагины отсюда ?
evil-programmers
Posted: Fri 19 May, 2017 12:21
by 2useven10
Imho, MinGW-w64 самый живой и беспроблемный порт.
Предыдущая ссылка для x64 систем, win32 здесь.
Версию брать ту на которой соберется (чем собирает zg - не знаю, я бы пробовал 7.1.0, 6.3.0).
В моих проектах работают все типы исключений, для себя беру seh для x64, dwarf для win32.
(posix или win32 тоже без разницы работают оба варианта, загружают чаше posix).
Отличная штука, очень удобная. Но это не совсем порт, там вроде как используется mingw-w64, это оболочка с менеджером пакетов.
evil-programmers
Posted: Fri 19 May, 2017 15:18
by Dennis_Moore
Попробовал собрать, что-то вышло что-то нет.
Поставил MSYS2, добавил C:\msys64\usr\bin в %PATH%. Скачал x86_64-6.3.0-release-posix-seh-rt_v5-rev2.7z, распаковал, добавил \mingw64\bin в %PATH%. Распаковал re2c-0.13.5-bin.zip в \mingw64\bin (судя по поиску в evil-programmers-master он нужен только для Airbrush и FarMail). Скопировал содержимое \PluginSDK\Headers.c в \evil-programmers-master\ecompl\src и \evil-programmers-master\listboxex и ecompl собрался, а вот Airbrush не хочет:
/usr/bin/sh: make: command not found
makefile:93: recipe for target 'c' failed
mingw32-make: *** [c] Error 127
evil-programmers
Posted: Fri 19 May, 2017 16:00
by Ariman
Dennis_Moore wrote:Поставил MSYS2, добавил C:\msys64\usr\bin в %PATH%.
В MSYS2 своя оболочка на основе bash-а. Там ничего в PATH не надо добавлять, и не надо скачивать компилятор отдельно. Всё нужное ставиться через pacman, включая компилятор, make и т.п. (через основной инсталятор там только bash ставиться и основные тулзы). Тем и удобно.
evil-programmers
Posted: Fri 19 May, 2017 16:41
by Dennis_Moore
Ariman wrote:
Dennis_Moore wrote:Поставил MSYS2, добавил C:\msys64\usr\bin в %PATH%.
В MSYS2 своя оболочка на основе bash-а. Там ничего в PATH не надо добавлять, и не надо скачивать компилятор отдельно. Всё нужное ставиться через pacman, включая компилятор, make и т.п. (через основной инсталятор там только bash ставиться и основные тулзы). Тем и удобно.
Добавил в PATH потому что он себя не добавляет, а я собираю из FAR'a.
Upd.: Глянул, таки добавляет, но у меня уже сделано через EnvMan.
Попробовав выполнить pacman -Syu получаю кучу "error: GPGME error: Invalid crypto engine" по количеству обновляемых пакетов. Судя по поиску всему проблема распространенная. MinGW-w64 6.3.0 есть среди пакетов но из-за этой ошибки ничего нельзя поставить.
evil-programmers
Posted: Fri 19 May, 2017 22:22
by 2useven10
Dennis_Moore, какой плагин вы пытаетесь собрать?
evil-programmers
Posted: Fri 19 May, 2017 23:07
by Dennis_Moore
2useven10 wrote:Dennis_Moore, какой плагин вы пытаетесь собрать?
Air Brush. Понятно что в тексте ошибки написано о том что не найдена программа make, но подкладывание make из состава MSYS2 или замена в makefile MAKE=make на MAKE=mingw32-make порождает другие ошибки. Прочитал на последней странице темы Air Brush'a о том что Denis собирал при помощи tdm-gcc-5.1.0-3, но похоже с того времени многое изменилось и если MinGW-w64 6.3.0 собирает хотя-бы dll плагина то tdm падает еще во время ее сборки в силу прекращения поддержки плагином gcc 5-й версии как я думаю.
evil-programmers
Posted: Sat 20 May, 2017 08:30
by zg
airbrush я собираю:
gcc.EXE (x86_64-posix-seh-rev0, Built by MinGW-W64 project) 7.1.0 — более старыми тоже должно собираться.
re2c 0.16 — конкретная версия тоже не принципиальна, главное, чтобы поддержка уникода была.
msys 1.0.19.
в путях mingw bin идёт раньше msys bin.
evil-programmers
Posted: Sat 20 May, 2017 12:09
by Dennis_Moore
zg wrote:
Спасибо за ответ. Вчера я пробовал загружать этот msys но были какие-то проблемы с sourceforge, сегодня загрузилось нормально. Пробую снова собрать и снова неуспешно (Segmentation fault):
Похоже тут мало чем можно помочь. А возможно собрать с помощью MSYS2 ?
Все остальные плагины которые хотел собрать собрались нормально:
bcopy (FAR1 SDK)
dialogtools
ecompl
EventViewer (PluginSettings.hpp взял из исходников IntChecker)
UserManager
Upd.: Попробовал на чистой виртуальной машине (8.1 U3 x86) собрать 32-х разрядную версию (i686-7.1.0-release-posix-dwarf-rt_v5-rev0), результат другой, но тоже отрицательный:
Попробовал этот make: http://www.equation.com/servlet/equation.cmd?fa=make. С ним нет Segmentation fault, но сборка x86_64-6.3.0-release-posix-seh-rt_v5-rev2 заканчивается тем же чем в предыдущем посте сборка на виртуальной машине. Без плагинов собирается, а сборка любого из них по отдельности
заканчивается ошибками (редактировал переменную SUBDIRS в makefile)
В hlf файле в разделе "Syntax file description" внизу глюк с заливкой цветом. Виновата строка #/[\040-\377]*/#
evil-programmers
Posted: Sat 20 May, 2017 19:10
by zg
Dennis_Moore wrote: ../../../bin/Formats/c.fmt.exp:fake:(.edata+0x38): undefined reference to `Colorize@8
смотрите bootstrap\c_colorize.cpp — он у вас явно пустой, re2c не находится.