Skip to content

想问下工具链以及工具链依赖的包的环境变量的作用域要怎么设置 #5171

Answered by waruqi
Yangff asked this question in Q&A
Discussion options

You must be logged in to vote

在根目录下xmake的时候所有的package都没有toolchain配置。不是很确定target里有没有生效,毕竟package都没编译完。。

xmake 的所有 set_xxx 配置,都是按 includes tree 从顶层一层层往下继承的。。

你在最顶层 xmake.lua 的配置,所有子 xmake.lua 里面的 target 都会生效。。但是如果在某个 子 xmake.lua 里面设置 set_xxx,那么它平级的 xmake.lua 以及顶层 xmake.lua 里面的 target 是继承不到的,也就不会生效。

所以即使你在顶层 xmake.lua 去 includes 并里面 set_xxx 了,是不会生效的,你还是得在外面去设置。。如果设置比较多,可以搞个 init_xxx 的 function ,然后一起配置

xmake.lua

include("RE-UE4SS")

init_re_ue4ss()

RE-UE4SS/xmake.lua

function init_re_us4ss()
    set_toolchains(...)
    -- TODO
end

include(targets...)

Replies: 2 comments 2 replies

Comment options

You must be logged in to vote
0 replies
Answer selected by Yangff
Comment options

You must be logged in to vote
2 replies
@Yangff
Comment options

@Yangff
Comment options

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants