Qmake 并将 $ORIGIN 传递给链接器选项 -rpath

发布于 2024-12-06 03:22:00 字数 336 浏览 2 评论 0原文

我想使用 -rpath 链接器选项来设置 .so 搜索路径。我希望它搜索 [app_path]/../lib。我尝试将其添加到我的 qmake .pro 文件中:

QMAKE_LFLAGS += -Wl,-rpath=$ORIGIN/../lib/

但是 qmake 以这种方式链接我的项目:

g++ -Wl,-rpath=RIGIN/../lib/ -Wl,-O1 -o myoutput main.o [...]

如何转义 $ORIGIN

I would like to use the -rpath linker option to set the .so search path. I'd like it to search [app_path]/../lib. I've tried add this to my qmake .pro file:

QMAKE_LFLAGS += -Wl,-rpath=$ORIGIN/../lib/

But qmake links my project this way:

g++ -Wl,-rpath=RIGIN/../lib/ -Wl,-O1 -o myoutput main.o [...]

How can I escape the $ORIGIN?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

凉风有信 2024-12-13 03:22:00

我发现这里一种正确逃避它的方法:

QMAKE_LFLAGS += '-Wl,-rpath,\'\$ORIGIN/../mylibs\'' 

I found here a way to properly escape it:

QMAKE_LFLAGS += '-Wl,-rpath,\'\$ORIGIN/../mylibs\'' 
叹沉浮 2024-12-13 03:22:00

如果您希望在构建时(正确)评估 $ORIGIN ,您只需将其添加到您的 .pro 文件中:

QMAKE_RPATHDIR += $ORIGIN/../mylibs

If you want $ORIGIN to be (properly) evaluated while building you can simply add this to your .pro file:

QMAKE_RPATHDIR += $ORIGIN/../mylibs
眼趣 2024-12-13 03:22:00

这是一个非常古老的问题,但是对于通过搜索来到这里的人们来说:不再需要旧答案中描述的方法。现代 Qt 版本(我的例子是 5.9),允许您只使用这个:

QMAKE_RPATHDIR += lib

这将添加所需的条目(包括 $ORIGIN-Wl,-z,origin 其中只要您使用相对目录,就会自动添加到 makefile 中。这意味着 lib 将生成所需的“原始”条目,而 /lib 之类的内容则不会。您添加到QMAKE_RPATHDIR的任何相对目录都将自动相对于$ORIGIN

This is a really old question, but for people getting here through a search: the methods described in the old answers are not needed anymore. Modern Qt versions (5.9 in my case), allow you to just use this:

QMAKE_RPATHDIR += lib

This will add the needed entries (including $ORIGIN and -Wl,-z,origin where needed) automatically to the makefile, as long as you're using a relative directory. Meaning that lib will produce the needed "origin" entries, while something like /lib will not. Any relative directory you add to QMAKE_RPATHDIR will be made relative to $ORIGIN automatically.

雪落纷纷 2024-12-13 03:22:00

DOLLAR=$

QMAKE_LFLAGS += -Wl,-rpath=$${DOLLAR}$${DOLLAR}ORIGIN/../myLibs

DOLLAR=$

QMAKE_LFLAGS += -Wl,-rpath=$${DOLLAR}$${DOLLAR}ORIGIN/../myLibs

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文