无法打开共享对象文件,尽管它完全在那里

时间:2017-12-28 08:26:22

标签: c makefile

以下是我makefile.lnx的内容:

PATHDIR = ../../..
PATHINC = $(PATHDIR)/include
PATHLIB = $(PATHDIR)/lib/linux

CC    = gcc
CFLAGS = -I. -I.. -I$(PATHINC) -O3

all:
        $(CC) $(CFLAGS) -o main main.c ../SimpleLCP_Path.o -L$(PATHLIB) -lpath47 -lm

我在其文件夹中并运行ls ../../../include,这将提供一堆.h个文件。正在运行

$ ls ../../../lib/linux
libpath47.a  libpath47.so

这正是镜像makefile中的路径结构。

make -f makefile.lnx

运行没有问题。然而,

$ ./main
./main: error while loading shared libraries: libpath47.so: cannot open shared object file: No such file or directory

我99%确定完全相同的文件结构和完全相同的makefile在我的mac上工作,但我现在没有它可访问。这里发生了什么?

0 个答案:

没有答案