如何使用'&' Yocto中的角色SRC_URI svn://

时间:2017-04-26 09:18:32

标签: svn escaping yocto

我有一个问题,建立包含& SVN路径中的字符。

SRC_URI = "svn://servf7/Valve&Actuator/DVPII/trunk/SOCPACManEnv;module=trunk;rev=100108"

它不起作用,因为SVN提取器找不到来源:

Failed to fetch URL svn://servf7/Valve&Actuator/DVPII/trunk/SOCPACManEnv;module=trunk;rev=100108, attempting MIRRORS if available.

添加转义字符\&效果更好 - 下载了源代码,但由于某些原因,Yocto添加了另一个\并且无法找到下载的文件(what exists: /trunk_servf7_.Valve&Actuator.DVPII.trunk.SOCPACManEnv_100108_.tar.gz):

Exception: FileNotFoundError: [Errno 2] No such file or directory: '/downloads/trunk_servf7_.Valve\\&Actuator.DVPII.trunk.SOCPACManEnv_100108_.tar.gz'

我尝试过Valve\0x26ActuatorValve%26Actuator转义,但在这种情况下,SVN无法找到网址。

不幸的是我无法重命名SVN文件夹,因为它包含了几十个旧的子项目。

Yocto Morty 2.2.1。

编辑:逃脱角色开始在Yocto 2.4中工作。

1 个答案:

答案 0 :(得分:0)

抓取器的downloadfilename参数可能对您有帮助(与&的转义相结合)。引用文档:“指定存储下载文件时使用的文件名。”

那么这个SRC_URI(假设包名称和版本是理智的):

SRC_URI = "svn://servf7/Valve\&Actuator/DVPII/trunk/SOCPACManEnv;module=trunk;rev=100108;downloadfilename=${BP}.tar.gz"

相关文档:https://www.yoctoproject.org/docs/2.2/mega-manual/mega-manual.html#var-SRC_URI