将应用程序从本地Linux机器移动到Linux服务器

Moving application to Linux server from local Linux machine

本文关键字:Linux 机器 移动 服务器 应用程序      更新时间:2023-10-16

我需要在Linux服务器(Ubuntu 12)上的VirtualBox下运行我在本地开发人员Linux机器(Ubuntu 14.04)上构建的c++应用程序,问题是应用程序有很多依赖项,我在该服务器上没有sudo,所以我不能做sudo apt-get install <libname-dev>之类的事情。

我使用ldd来找出服务器上缺少的库。

例如:

libopenblas.so.0 => not found
liblapack.so.3 => not found

然后我将这个库从我的本地机器/usr/lib/复制到应用程序附近的服务器,然后手工创建符号链接。

要复制的文件:

liblapack.so.3.0
libopenblas.so.0

创建链接:

liblapack.so.3
libopenblas.so
  1. 做这种把戏是坏主意吗,它总是有效吗?
  2. 我想知道Linux的。so命名约定,.so.3.0, .so.0等是什么意思?

在另一个Ubuntu 12上重新编译并静态链接缺失的库。例句:

gcc -lsome_dynamic_lib code.c some_static_lib.a