Lua грешка при зареждане на модула „libpng“ (Torch, MacOSX)

Как да накарам libpng да се зарежда правилно в Lua? Пускам Lua/Torch в iTorch Notebook в Mac OSX 10.10.3, където работят други основни функции в Lua, като чертане и изчисления.

 brew install libpng

Предупреждение: libpng-1.6.17 вече е инсталиран

Ако тичам:

require 'nn';
require 'image';
itorch.image(image.lena())

грешка при зареждане на модул 'libpng' от файл '/usr/local/lib/lua/5.1/libpng.so': dlopen(/usr/local/lib/lua/5.1/libpng.so, 6): Библиотеката не е заредена: / usr/local/lib/libpng15.15.dylib Посочено от: /usr/local/lib/lua/5.1/libpng.so Причина: Несъвместима версия на библиотеката: libpng.so изисква версия 33.0.0 или по-нова, но libpng15.15. dylib предоставя версия 29.0.0 предупреждение: не може да се зареди (инсталира ли се?) /usr/local/share/lua/5.1/dok/inline.lua:736: libpng пакетът не е намерен, моля инсталирайте libpng stack traceback: [C ]: във функцията 'грешка' /usr/local/share/lua/5.1/dok/inline.lua:736: във функцията 'грешка' /usr/local/share/lua/5.1/image/init.lua:142: във функцията 'saver' /usr/local/share/lua/5.1/image/init.lua:355: във функцията 'save' /Users/MY/torch/install/share/lua/5.1/itorch/gfx.lua: 25: във функция 'f' [низ "local f = function() return itorch.image(iii)..."]:1: в основна част [C]: във функция 'xpcall' /Users/MY/torch/ install/share/lua/5.1/itorch/main.lua:177: във функция /Users/MY/torch/install/share/lua/5.1/lzmq/poller.lua:75: във функция 'poll' /Users/MY /torch/install/share/lua/5.1/lzmq/impl/loop.lua:307: във функция 'poll' /Users/MY/torch/install/share/lua/5.1/lzmq/impl/loop.lua:325 : във функцията 'sleep_ex' /Users/MY/torch/install/share/lua/5.1/lzmq/impl/loop.lua:370: във функцията 'start' /Users/MY/torch/install/share/lua/5.1 /itorch/main.lua:344: в основната част [C]: във функцията 'require' [низ "arg={'/Users/MY/.ipython/profile_default/secu..."]:1: в основната част


person mikal94305    schedule 01.06.2015    source източник


Отговори (2)


Имах подобен проблем (OSX 10.9.5). Вероятно имате няколко инсталирани версии на libpng, като тази, извикана по време на инсталирането на luarocks, има архитектура i386 (изисква се x86_64).

За да разрешите това:

  1. Опитайте да инсталирате изображението отново и прочетете дневника:

    изображение за инсталиране на luarocks

  2. Проверете дневника, за да видите дали получавате съобщение от типа:

    ld: предупреждение: игнориране на файл /Library/Frameworks//libpng.framework/libpng, липсва необходимата архитектура x86_64 във файл /Library/Frameworks//libpng.framework/libpng (2 части)

  3. Ако случаят е такъв (ако приемем, че използвате brew), премахнете рамката libpng в /Library/Frameworks и направете

    brew install libpng --universal

  4. Преинсталирайте изображението и стартирайте.

Това проработи при мен, надявам се да проработи и при вас.

person Tristan SYLVAIN    schedule 03.06.2015

Преинсталирането на пакета с изображения, както и принудителното свързване на libpng може да го поправи:

brew link libpng --force
luarocks install image
person smhx    schedule 01.06.2015
comment
Направих това и нямаше грешки директно от тези команди, но връщайки се към itorch, се появява същата грешка при зареждане на модул libpng. Деинсталирах и преинсталирах самата lua и няма разлика. Дори изтеглих ръчно libpng от: mac-dev-env.patrickbougie.com/libpng но нямаше разлика. Трябва ли моите пътища да бъдат зададени към различни директории? - person mikal94305; 03.06.2015