0

我试图安装teradeep/demo-apps进行试验,但遇到了障碍。

打开包装后,我看到了三个文件夹:opencvgeneric-pcgeneric-embedded. 编译这两个通用文件夹后,我尝试运行所有三个,但三个都失败了。

当我尝试运行generic-pc时,它给了我:

Number of threads used: 8
qlua: ./frame.lua:63: module 'linuxcamera' not found:
    no field package.preload['linuxcamera']
    no file '/home/dave/.luarocks/share/lua/5.1/linuxcamera.lua'
    no file '/home/dave/.luarocks/share/lua/5.1/linuxcamera/init.lua'
    no file '/home/dave/torch/install/share/lua/5.1/linuxcamera.lua'
    no file '/home/dave/torch/install/share/lua/5.1/linuxcamera/init.lua'
    no file './linuxcamera.lua'
    no file '/home/dave/torch/install/share/luajit-2.1.0-alpha/linuxcamera.lua'
    no file '/usr/local/share/lua/5.1/linuxcamera.lua'
    no file '/usr/local/share/lua/5.1/linuxcamera/init.lua'
    no file '/home/dave/.luarocks/lib/lua/5.1/linuxcamera.so'
    no file '/home/dave/torch/install/lib/lua/5.1/linuxcamera.so'
    no file './linuxcamera.so'
    no file '/usr/local/lib/lua/5.1/linuxcamera.so'
    no file '/usr/local/lib/lua/5.1/loadall.so'
stack traceback:
    [C]: at 0x7fcb5d5a1970
    [C]: in function 'require'
    ./frame.lua:63: in function 'prep_lua_linuxcamera'
    ./frame.lua:86: in function 'init'
    run.lua:102: in main chunk

当我尝试运行opencvandgeneric-embedded文件夹时,它给了我:

: error while loading shared libraries: libthnets.so: cannot open shared object file: No such file or directory

解决此问题的最佳方法是什么?

4

1 回答 1

0

为了在 linux 上正常工作,演示应用程序需要一个专门编译的库,称为linuxcamera演示应用程序提供的库。您将需要编译它并将其存储在您的/home/dave/torch/install/lib/lua/5.1/文件夹中。

首先,转到lib文件夹generic-pc并编辑Makefile文件,使其看起来像这样(您可以复制并替换所有内容,唯一更改的是 libs 文件夹的路径):

UNAME_S := $(shell uname -s)
UNAME_P := $(shell uname -p)
LBITS := $(shell getconf LONG_BIT)

INCLUDE = -I. -I/usr/local/include -I$(HOME)/torch/install/include
LIBOPTS = -shared -L$(HOME)/torch/install/lib/lua/5.1 -L$(HOME)/torch/install/lib
CFLAGS = -O3 -c -fpic -Wall
LINUXCAMERA_FILES = linuxcamera.o videocap.o
LIBFILES = linuxcamera.so
CC = gcc

ifneq ($(filter arm%,$(UNAME_P)),)
    CFLAGS += -mfpu=neon
endif

.PHONY : all
all : $(LIBFILES)

.c.o:
    $(CC) $(CFLAGS) $(INCLUDE) $<

linuxcamera.so : $(LINUXCAMERA_FILES)
    $(CC) $(LINUXCAMERA_FILES) $(LIBOPTS) -o $@

install : $(LIBFILES)
    sudo cp $(LIBFILES) $(HOME)/torch/install/lib/lua/5.1/

uninstall :
    sudo rm $(HOME)/torch/install/lib/lua/5.1/linuxcamera.so

.PHONY : clean
clean :
    rm -f *.o $(LIBFILES)

然后,如记录的那样,运行make clean; make; make install;

这应该为您的运行时编译并复制lib文件夹中的库。qlua您现在应该能够运行qlua run.lua并且它应该正确加载库。

于 2016-05-10T04:11:14.633 回答