Linker 在makefile中设置共享库的路径以执行

Linker 在makefile中设置共享库的路径以执行,linker,makefile,Linker,Makefile,我想从makefile内部运行一个程序,该程序与我自己创建的一些共享库相链接。但我不希望它们永久地添加到我系统的库池中 我怎样才能做到这一点 我已经想到,我必须以某种方式使用/设置LD_LIBRARY_路径,但这似乎对我不起作用: run: export LD_LIBRARY_PATH=$(TESTLIB):$(DEPENDENCIES) ./testit 尝试运行额外的导出任务也未成功: export: ldconfig -n $(DEPENDENCIES)

我想从makefile内部运行一个程序,该程序与我自己创建的一些共享库相链接。但我不希望它们永久地添加到我系统的库池中

我怎样才能做到这一点

我已经想到,我必须以某种方式使用/设置LD_LIBRARY_路径,但这似乎对我不起作用:

run:
    export LD_LIBRARY_PATH=$(TESTLIB):$(DEPENDENCIES)
    ./testit
尝试运行额外的导出任务也未成功:

export:
    ldconfig -n $(DEPENDENCIES)
    ldconfig -n $(TESTLIB)

配方中的每一行都在自己的shell中运行,因此将其更改为:

run:
    export LD_LIBRARY_PATH=$(TESTLIB):$(DEPENDENCIES); \
    ./testit


快速而完美,也感谢你指出了自己的外壳部分,你启发了我,因为我不明白接下来会发生什么。是的,我想这是几乎所有使用
make
的人都会在某个时间绊倒的事情之一,然后再也不会忘记。
run:
    LD_LIBRARY_PATH=$(TESTLIB):$(DEPENDENCIES) ./testit