在Debian打包过程中修改规则文件时出现错误。

尝试使我的Debian打包按照我的要求工作,我修改了debian/rules文件(显示行号)。
12 %:
13  dh $@ 
14
15 override_dh_install:
16     dh_install
17     install -m 644 "My Company's Folder" "debian/mainproject/usr/share/MyCompanyFolder"

error:
.....
dpkg-buildpackage: host architecture i386
 dpkg-source --before-build mainproject-1.0
 fakeroot debian/rules clean
debian/rules:16: *** missing separator.  Stop.
dpkg-buildpackage: error: fakeroot debian/rules clean gave error exit status 2

总的来说,我认为最好避免在文件名/目录中使用空格,因为这会导致类似的问题。尝试将文件名mainproject_1/* "/usr/share/My Company's Folder/MainProjector"用引号括起来,或者用\转义空格mainproject_1/* /usr/share/My Company's\ Folder/MainProject。我不确定 "'" 也会成为一个问题。类似的建议。 - Panther
\040是用于URL的(Apache)。 - Panther
@bodhi.zazen - 我已经尝试了两种方法 - 请看我的解释... 转义空格会导致错误,而添加引号不仅会导致错误,还会在顶层和内部创建文件夹 "。很不幸,在我需要放置这个产品的公司文件夹中有空格... 如果绝对没有办法做到这一点,那么我将把产品放在一个没有空格的文件夹中,但如果可以的话,我希望将产品放在现有的公司文件夹中。 - Thalia
据我所知,没有办法用空格来做这个。你得等着看看有没有其他建议。 "'" 也可能会有问题。 - Panther
编辑问题以删除除了与我在寻找答案时遇到的最后一个错误相关的内容... - Thalia
1个回答

针对您的特定错误debian/rules:16: *** missing separator. Stop.,请确保您的debian/rules文件中有制表符(tab characters)。使用空格进行缩进不起作用。


1谢谢,文件中的选项卡带我到了下一个错误... 我得找出该写什么才能让它做正确的事情 - Thalia
谢谢,那个错误信息真是一点帮助都没有。 - totaam