我怎样才能在一台Linux PC上使用Opencv构build另一台?

我正在尝试使用opencv创build一个C ++应用程序,并与没有在PC上安装Opencv的其他用户共享该应用程序。 我怎样才能做到这一点?

我试过了 :

  1. 我复制了一些/ home / myfolderpath中的所有头文件,源文件和库。
    1. 我创build了应用程序并链接了存储在/ home / myfolder中的所有文件。
    2. 将环境variablesLD_LIBRARY_PATH设置为指向.bashrc文件中的/ home / myfolder,以便应用程序可以在运行时查找这些库。

我能够在我的电脑上编译,但是当我与其他PC共享我的文件夹并链接所有库时,我得到Opencv的未定义的参考错误。

谢谢

答案是静态链接。 如果您不关心可执行文件的大小,并且目标机器没有所需的库,只需在可执行文件中提供它们即可。 请看这个问题以供参考。

这个答案有安全隐患 – 在使用之前告知你自己,只能在私人网络上使用。


您可以让其他用户ssh进入您的电脑,并使用-X-Y选项将X11连接转发到他自己的机器。

所以,其他用户会这样做:

 ssh -Y someUser@yourPC yourApp 

您需要考虑是否要相信该用户以您的身份登录,或者您是否希望在您的PC上创建一个只能运行您的特定应用的用户,而不是其他用户。


另一个选择可能是让其他用户使他的X11显示器可用于您的电脑,他在他的机器上输入以下内容:

 xhost + 

然后,您可以在您的机器上启动您的应用程序,但将显示器转发到他的机器 – 这样他就不需要登录到您的机器或有密码:

 DISPLAY=<otherPC>:0 yourApp