[Freeswitch-users] Latest FreeSWITCH pull and Lua

Anthony Minessale anthony.minessale at gmail.com
Fri Dec 13 05:25:01 MSK 2013


Maybe related to: https://github.com/zdevito/terra/issues/6


On Thu, Dec 12, 2013 at 6:56 PM, James Mortensen <
james.mortensen at synclio.com> wrote:

> Hello,
>
> I pulled the latest master and ran make lua-reconf and make
> mod_lua-install.  I shutdown and restarted FreeSWITCH and still see the
> same output when hitting the require statement.
>
> Here's the version of FreeSWITCH I'm on, for confirmation:
>
> FreeSWITCH Version 1.5.8b+git~20131210T191701Z~9ec1e86574~64bit (git
> 9ec1e86 2013-12-10 19:17:01Z 64bit)
>
> FreeSWITCH Started
> Max Sessions [1000]
> Session Rate [30]
> SQL [Enabled]
>
>
> I saw the "link against installed libraries" message after running
> mod_lua-install, and I'm not 100% sure I understand, but do I need to
> somehow link the mod_lua module to LuaXml or vice versa?
>
>
> Thanks,
> James
>
>
>
> On Thu, Dec 12, 2013 at 4:26 PM, Anthony Minessale <
> anthony.minessale at gmail.com> wrote:
>
>> try getting latest master and doing make lua-reconf then make
>> mod_lua-install
>>
>>
>>
>> On Thu, Dec 12, 2013 at 5:51 PM, James Mortensen <
>> james.mortensen at synclio.com> wrote:
>>
>>> Here's what I've since discovered:
>>>
>>> - Verified FreeSWITCH uses Lua 5.2.2 -
>>> see freeswitch/src/mod/languages/mod_lua/lua/lua.h
>>> - Manually built and compiled the same Lua 5.2.2 for the system Lua
>>> - Downloaded and compiled from source the latest LibXml using the Lua
>>> 5.2.2 development headers.
>>>
>>> gcc -shared -fPIC -Wl,-E -o LuaXML_lib.so LuaXML_lib.c
>>> -I/mnt/src/lua/lua-5.2.2/src
>>>
>>> - Copied the .so binary to /usr/local/lib/lua/5.2/LuaXML_lib.so.
>>>
>>>
>>> Afterwards, verify the system Lua can load the library:
>>>
>>> test.lua:
>>>    print('hello world from lua')
>>> require('LuaXML')
>>> print(_VERSION)
>>> print("---\nREADY.")
>>>
>>> ubuntu at fs#  lua /mnt/scripts/test.lua
>>>  hello world from lua
>>> Lua 5.2
>>> ---
>>> READY.
>>>
>>>
>>> The library loads without incident.  But, when we try to run the same
>>> test script from the CLI, we get the following:
>>>
>>> freeswitch at ip-10-166-245-111> lua test.lua
>>> hello world from lua
>>> 2013-12-12 23:21:08.515046 [ERR] mod_lua.cpp:199 error loading module
>>> 'LuaXML_lib' from file '/usr/local/lib/lua/5.2/LuaXML_lib.so':
>>>  /usr/local/lib/lua/5.2/LuaXML_lib.so: undefined symbol: lua_gettop
>>> stack traceback:
>>> [C]: in ?
>>>  [C]: in function 'require'
>>> /usr/local/share/lua/5.2/LuaXML.lua:1: in main chunk
>>> [C]: in function 'require'
>>>  /opt/freeswitch-1.5.8-2013-12-11/scripts/test.lua:2: in main chunk
>>>
>>> -ERR Cannot execute script
>>>
>>> freeswitch at ip-10-166-245-111>
>>>
>>>
>>>
>>> Now, I'm not sure what the issue is, but if the library compiles and
>>> even runs with the same Lua version that's embedded in FreeSWITCH, why
>>> would it not work when called from within FreeSWITCH?
>>>
>>>
>>>
>>> James
>>>
>>>
>>> On Thu, Dec 12, 2013 at 12:02 AM, James Mortensen <
>>> james.mortensen at synclio.com> wrote:
>>>
>>>> Okay, so I figured out that the multiple Lua VMs detected is because
>>>> the version of Lua was slightly different than the compiled .so file for
>>>> LuaXML_lib, even though it said it was the right version. So I recompiled
>>>> it and added it into the /usr/local/lib/lua/5.2 folder, and I put
>>>> LuaXml.lua into /usr/local/share/lua/5.2.
>>>>
>>>> Now, I'm seeing these undefined symbol errors and will need to tackle
>>>> this next:
>>>>
>>>> 2013-12-12 07:41:53.395054 [ERR] mod_lua.cpp:199 error loading module
>>>> 'LuaXML_lib' from file '/usr/local/lib/lua/5.2/LuaXML_lib.so':
>>>>  /usr/local/lib/lua/5.2/LuaXML_lib.so: undefined symbol: lua_gettop
>>>> stack traceback:
>>>> [C]: in ?
>>>>  [C]: in function 'require'
>>>> /usr/local/share/lua/5.2/LuaXml.lua:1: in main chunk
>>>> [C]: in function 'require'
>>>>  /opt/freeswitch/scripts/parser.lua:2: in main chunk
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> James
>>>>
>>>>
>>>>
>>>> On Wed, Dec 11, 2013 at 6:26 PM, James Mortensen <
>>>> james.mortensen at synclio.com> wrote:
>>>>
>>>>> Just to update this thread, I created the following Lua script:
>>>>>
>>>>>  print('hello world from lua')^M
>>>>> print(_VERSION)
>>>>> print("---\nREADY.")
>>>>>
>>>>> and then ran it from the CLI.  The output was:
>>>>>
>>>>> freeswitch at fs> lua test.lua
>>>>> hello world from lua
>>>>> Lua 5.2
>>>>> ---
>>>>> READY.
>>>>>
>>>>>  Also, I found part of the answer to my problem. FreeSWITCH Lua was
>>>>> updated to 5.2 on Nov 12th, 2771498707c194c70cf25ad9473be66ef59cfb46, so I
>>>>> went ahead and grabbed the corresponding LuaXml library for version 5.2 not
>>>>> 5.1.
>>>>>
>>>>>
>>>>> 2013-12-12 02:12:42.615049 [ERR] mod_lua.cpp:199 multiple Lua VMs
>>>>> detected
>>>>> stack traceback:
>>>>> [C]: in ?
>>>>>  [C]: in function 'require'
>>>>> /usr/local/share/lua/5.2/LuaXml.lua:1: in main chunk
>>>>> [C]: in function 'require'
>>>>>  /opt/freeswitch/scripts/parser.lua:2: in main chunk
>>>>>
>>>>> So now it's a matter of tracing down this error, which is where this
>>>>> mailing list post left off:
>>>>> http://freeswitch-users.2379917.n2.nabble.com/Not-really-a-Freeswitch-issue-but-td7595250.html
>>>>>
>>>>> I'll keep pounding away at this and update the list once I figure it
>>>>> out.
>>>>>
>>>>>
>>>>> James
>>>>>
>>>>>
>>>>> On Wed, Dec 11, 2013 at 4:05 PM, James Mortensen <
>>>>> james.mortensen at synclio.com> wrote:
>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> I just ran git pull and rebuilt FreeSWITCH, and now Lua is unable to
>>>>>> locate the LuaXml library.
>>>>>>
>>>>>> module 'LuaXml' not found:
>>>>>> no field package.preload['LuaXml']
>>>>>>  no file '/usr/local/lib/lua/5.2/LuaXml.so'
>>>>>> no file '/usr/local/lib/lua/5.2/loadall.so'
>>>>>>  no file './LuaXml.so'
>>>>>>
>>>>>> and another:
>>>>>>
>>>>>> module 'LuaXml' not found:
>>>>>> no field package.preload['LuaXml']
>>>>>>  no file './LuaXml.so'
>>>>>> no file '/usr/local/lib/lua/5.1/LuaXml.so'
>>>>>> no file '/usr/lib/x86_64-linux-gnu/lua/5.1/LuaXml.so'
>>>>>>  no file '/usr/lib/lua/5.1/LuaXml.so'
>>>>>> no file '/usr/local/lib/lua/5.1/loadall.so'
>>>>>>
>>>>>> Note that in /usr/local/lib/lua/5.1 there is a LuaXML_lib.so, but no
>>>>>> LuaXml.so.
>>>>>>
>>>>>> Those are example of one of the many error messages the system has
>>>>>> been spitting out at me.  Tt's complaining about not finding a LuaXml.so
>>>>>> despite none actually existing on the box and despite following the
>>>>>> instructions in the wiki.
>>>>>>
>>>>>> I already followed the instructions in
>>>>>> http://wiki.freeswitch.org/wiki/Mod_lua for installing LuaXml via
>>>>>> the luarocks package manager, so since that didn't work I tried including
>>>>>> the library manually from the luaxml website.  Although the lua on the box
>>>>>> can run the test.lua script successfully, I am not having luck in
>>>>>> FreeSWITCH.
>>>>>>
>>>>>> I also tried recompiling from scratch running the bootstrap and
>>>>>> configure scripts.  No luck.
>>>>>>
>>>>>> I've also tried installing both Lua 5.1 and Lua 5.2.  I realize the
>>>>>> wiki shows 5.1 being used, but I already tried that and moved onto trying
>>>>>> other things.  Still working on trying to figure out what happened, but
>>>>>> wanted to see if anyone else is having any trouble with this as well.  I
>>>>>> realize Lua is embedded in FreeSWITCH, so I'm a bit confused about why it
>>>>>> can't find the library.
>>>>>>
>>>>>> Using lua 5.2 on the box, I can run the test.lua script that users
>>>>>> the library, what version of Lua does FreeSWITCH use?  I'm not convinced
>>>>>> it's using an embedded version of Lua based on the fact that I see it
>>>>>> trying to use the paths from the Lua installed from apt-get.
>>>>>>
>>>>>>
>>>>>> James
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>> _________________________________________________________________________
>>> Professional FreeSWITCH Consulting Services:
>>> consulting at freeswitch.org
>>> http://www.freeswitchsolutions.com
>>>
>>> 
>>> 
>>>
>>> Official FreeSWITCH Sites
>>> http://www.freeswitch.org
>>> http://wiki.freeswitch.org
>>> http://www.cluecon.com
>>>
>>> FreeSWITCH-users mailing list
>>> FreeSWITCH-users at lists.freeswitch.org
>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>> http://www.freeswitch.org
>>>
>>>
>>
>>
>> --
>> Anthony Minessale II       ♬ @anthmfs  ♬ @FreeSWITCH  ♬
>>
>>http://freeswitch.org/http://cluecon.com/>> http://twitter.com/FreeSWITCH
>> ☞ irc.freenode.net #freeswitch ☞ *http://freeswitch.org/g+
>> <http://freeswitch.org/g+>*
>>
>> ClueCon Weekly Development Call
>> ☎ sip:888 at conference.freeswitch.org  ☎ +19193869900
>>
>>
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services:
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>>
>> 
>> 
>>
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://wiki.freeswitch.org
>> http://www.cluecon.com
>>
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>>
>>
>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
> 
> 
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://wiki.freeswitch.org
> http://www.cluecon.com
>
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>


-- 
Anthony Minessale II       ♬ @anthmfs  ♬ @FreeSWITCH  ♬

☞ http://freeswitch.org/http://cluecon.com/http://twitter.com/FreeSWITCH
☞ irc.freenode.net #freeswitch ☞ *http://freeswitch.org/g+
<http://freeswitch.org/g+>*

ClueCon Weekly Development Call
☎ sip:888 at conference.freeswitch.org  ☎ +19193869900
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20131212/b1279e8a/attachment-0001.html 


Join us at ClueCon 2013 Aug 6-8, 2013
More information about the FreeSWITCH-users mailing list