1

我可以从中看出man gcc-W警告有关,但我无法确切知道-W1会做什么。我正在使用以下 Makefile.am 进行构建:

lib_mysqludf_ssdeep_la_LDFLAGS = -module -avoid-version -no-undefined -rpath @MYSQL_PLUGINDIR@ @SSDEEP_LIBDIR@ @SSDEEP_LIBS@

在 Ubuntu 上很好,但是 RedHat (RHEL) 抛出一个“路径必须是绝对错误”,所以在找到gtk 邮件列表的帖子后,我尝试了:

lib_mysqludf_ssdeep_la_LDFLAGS = -module -avoid-version -no-undefined -W1,--rpath -W1,@MYSQL_PLUGINDIR@ @SSDEEP_LIBDIR@ @SSDEEP_LIBS@

哪个有效,但我不明白为什么,我想在依赖它作为我的 Redhat 构建问题的修复之前找出答案。

更新看起来 redhat 没有提供到 @MYSQL_PLUGINDIR@ 的路径,因此 -rpath 失败了。

4

1 回答 1

1

你确定那是 W1 - 不是 Wl (即字母 el )?

查看 gcc 手册页的链接器选项部分

于 2010-11-11T11:26:23.330 回答