1

我正在尝试通过 Jam 编译和链接 DLL。这是一个仅资源的 DLL,所以我需要弄清楚如何通过 Jam 将 /noentry 标志传递给链接器。

这是我的 Jamfile 现在的样子:

// need to figure out how to specify the /noentry CFLAG somewhere here

PackageDll foo
    : NAME foo.dll
    : DESC  "Resource File"
    : USE_C
    ;

Build foo
    : system.pkg foo.rc
    : . 
    ;

提前致谢!

4

1 回答 1

1

语法看起来像 jam,但 PackageDll 和 Build 规则不是标准的(即 Perforce)jam 规则。如果这些规则以最终调用标准 jam Link 操作的方式实现,则将您的标志添加到目标 LINKFLAGS 变量中就可以了。假设目标的名称是 foo.dll(添加您的规则添加的任何 grist,如果有的话),可以这样完成:

LINKFLAGS on foo.dll = [ on foo.dll return $(LINKFLAGS) ] /noentry ;

不知道你的规则做什么,最好在调用它们之后再做。

于 2013-04-11T19:56:29.827 回答