Page 2 of 5
Re: DLL для LUA плагина
Posted: Wed 10 Sep, 2014 19:29
by Shmuel
Latest post of the previous page:
Поверьте, что мне намного проще было бы собрать, чем объяснять.
Re: DLL для LUA плагина
Posted: Wed 10 Sep, 2014 19:38
by ladserg
Shmuel wrote:Поверьте, что мне намного проще было бы собрать, чем объяснять.
Я как раз понял, просто подключив LUA вы значительно расширили потенциал Far Manager, теперь он может спокойно тягаться по возможностям автоматизации с Emacs, только у Emacs нет редактора, у Far'а он есть.
У меня тут при сборке матерится:
Code: Select all
C:\1\far_project\test>make
gcc -o test.dll luaplug.o -Wl,--kill-at -shared -s -m32 -LC:\1\far_project\farmanager-read-only\unicode_far\Release.32.gcc -llua51 -lluafar3
c:/language/mingw/bin/../lib/gcc/i686-w64-mingw32/4.8.1/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -llua51
c:/language/mingw/bin/../lib/gcc/i686-w64-mingw32/4.8.1/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lluafar3
collect2.exe: error: ld returned 1 exit status
make.EXE": *** [test.dll] Error 1
Это мне нужно библиотеки куда то сунуть в область видимости?
Re: DLL для LUA плагина
Posted: Wed 10 Sep, 2014 19:48
by ladserg
ОЙ, всё, разобрался, надо было make запускать из под bash.
Вы уверены, что писателям плагинов на LUA необходимо занять такие вещи?
П.С. Осталось теперь разобраться как собирать x64 версию библиотечки
Re: DLL для LUA плагина
Posted: Wed 10 Sep, 2014 20:07
by Shmuel
У меня без bash. Да, там есть одно допущение во вставляемом мейкфайле... ладно, нет времени сейчас.
Вы уверены, что писателям плагинов на LUA необходимо занять такие вещи?
Не уверен. Но также и не уверен, что это - моя обязанность. Ну не может - не надо.
Re: DLL для LUA плагина
Posted: Wed 10 Sep, 2014 20:17
by ladserg
Shmuel wrote:У меня без bash. Да, там есть одно допущение во вставляемом мейкфайле... ладно, нет времени сейчас.
Я там заменил
на
Сейчас пока ломаю голову как научить mingw у меня собирать x64 бинарники
Re: DLL для LUA плагина
Posted: Wed 10 Sep, 2014 20:38
by Shmuel
Для этого нужен MinGW64.
И комстрока наподобие: make DIRBIT=64 LUAEXE=c:\exe32\lua.exe PATH=C:\MinGW64\bin
.
Re: DLL для LUA плагина
Posted: Wed 10 Sep, 2014 20:50
by ladserg
Shmuel wrote:Для этого нужен MinGW64.
И комстрока наподобие: make DIRBIT=64 LUAEXE=c:\exe32\lua.exe PATH=C:\MinGW64\bin
.
Ага, поставил сборку MinGW поддерживающую сборку x64 бинарников. А
LUAEXE=c:\exe32\lua.exe
для чего?
Re: DLL для LUA плагина
Posted: Wed 10 Sep, 2014 21:05
by ladserg
Re: DLL для LUA плагина
Posted: Wed 10 Sep, 2014 21:09
by Shmuel
Не помню, команду скопировал из истории.
Возможно из-за того, что указан PATH=C:\MinGW64\bin, и из-за этого lua.exe не находится.
DIRBIT и TARGET можно указывать с комстроки, тогда ваше изменение luaplug.mak не нужно, а также можно обойтись одним мейкфайлом для x32 и x64.
Re: DLL для LUA плагина
Posted: Wed 10 Sep, 2014 21:15
by ladserg
Shmuel wrote:Не помню, команду скопировал из истории.
Возможно из-за того, что указан PATH=C:\MinGW64\bin, и из-за этого lua.exe не находится.
DIRBIT и TARGET можно указывать с комстроки, тогда ваше изменение luaplug.mak не нужно, а также можно обойтись одним мейкфайлом для x32 и x64.
Хм, про DIRBIT и TARGET из коммандной строки я как то не подумал.
LuaFAR — библиотека для создания плагинов на языке Lua
Posted: Tue 24 Feb, 2015 21:49
by Shmuel
gotar wrote: использовать как образец для подражения
Для начинающих писателей LuaFAR-плагинов образец такой:
http://forum.farmanager.com/viewtopic.p ... 42#p122642
LuaFAR — библиотека для создания плагинов на языке Lua
Posted: Tue 24 Feb, 2015 21:59
by gotar
Для того чтобы это сработало, гдето должно быть написано
#ifdef EXPORT_OPEN
..
#endif
правильно ли я понял, и как называется этот файл? Какую версию gcc лучше использовать?
LuaFAR — библиотека для создания плагинов на языке Lua
Posted: Tue 24 Feb, 2015 22:06
by Shmuel
gotar wrote: как называется этот файл?
Вы вполне в состоянии сами разобраться.
gotar wrote: Какую версию gcc лучше использовать?
4.7 и выше точно работают.
LuaFAR — библиотека для создания плагинов на языке Lua
Posted: Tue 24 Feb, 2015 22:11
by gotar
А какую сборку gcc Вы используете?
LuaFAR — библиотека для создания плагинов на языке Lua
Posted: Tue 24 Feb, 2015 22:18
by Shmuel
gotar wrote: А какую сборку gcc Вы используете?
У меня их несколько стоит. Это не критично.
LuaFAR — библиотека для создания плагинов на языке Lua
Posted: Wed 04 Mar, 2015 09:19
by Karagy
Модель эксепшенов (sjlj, dwarf, seh) имеет значение? А то эти mingw gcc все такие разные.