如何在一台Linux PC上使用Opencv构建到另一台?

时间:2017-08-22 06:17:07

标签: c++ linux opencv

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

我试过了:

  1. 我在一些/ home / myfolder路径中复制了所有头文件,源文件和库。
    1. 我创建了应用程序并链接了存储在/ home / myfolder中的所有文件。
    2. 将环境变量LD_LIBRARY_PATH设置为.bashrc文件中的指向/ home / myfolder,以便应用程序可以在运行时找到这些库。
  2. 我能够在我的电脑上编译,但是当我与其他PC共享我的文件夹并链接所有库时,我得到Opencv的未定义参考错误。

    由于

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

此答案具有安全隐患 - 在使用前告知您自己,并且仅在专用网络上使用。

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

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

ssh -Y someUser@yourPC yourApp

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

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

xhost +

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

DISPLAY=<otherPC>:0  yourApp