Qt 交叉编译的路径设置

在交叉编译Qt源码时,需要设置部署路径。但是部署路径有三个变量,分别是-prefix-extprefix 和-hostprefix。那这三个变量分别是什么意思呢?

-prefix:目标板的引用路径。 这个路径有两个作用,一个是指定目标机的Qt库路径,也就是说,当你把Qt库部署到目标机时,需要把Qt库拷贝到这个路径下,Qt程序就可以自动找到库。第二个是,如果你没有指定extprefix, install的时候会把Qt库部署到sysroot+prefix这个路径下。

-extprefix:  介于默认会把Qt库部署到sysroot+prefix路径下,如果你不想这样,可以设置extprefix, 这样Qt库会部署到这个目录下而不是sysroot下。可以避免污染sysroot。我个人建议编译的时候设置-prefix 和-extprefix 就可以了。

-hostprefix: 如果你还有更奇葩的需求,比如qmake等工具不要和Qt库安装在一起,那么这个参数就很适合你。这个参数是指定编译工具的安装位置,不包括Qt库。指定这个变量之后,qmake等工具会安装在这个目录下,extprefix下面就不会有这些工具了。我目前没想到这么做有啥好处。所以不建议使用。



综上所述,建议编译时制定两个路径,一个是目标板部署路径-prefix,一个是宿主机部署路径 -extprefix. 如果不怕污染sysroot的话,指定一个prefix就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值