You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A require string that contains "-" undergoes a translation to "_" when looking for a C symbol.
That's not true actually, as Lua docs say:
Once it finds a C library, this searcher first uses a dynamic link facility to link the application with the library. Then it tries to find a C function inside the library to be used as the loader. The name of this C function is the string "luaopen_" concatenated with a copy of the module name where each dot is replaced by an underscore. Moreover, if the module name has a hyphen, its prefix up to (and including) the first hyphen is removed. For instance, if the module name is a.v1-b.c, the function name will be luaopen_b_c.
The issue arises when trying to compile luautf8 with luarocks on Windows, it generates a .def file with the invalid export function name: luaopen_lua-utf8 (or something like that), so I think it's more of a luarocks issue. I'm not familiar with lua world though, so I haven't reported any issue neither here, nor to luarocks repo.
Reported by @nadako
A require string that contains "-" undergoes a translation to "_" when looking for a C symbol.
luautf8 should use a require string and .so name of just
"utf8"
instead of the current"lua-utf8"
The text was updated successfully, but these errors were encountered: