weichuang02 发表于 2013-04-22 17:47

rpmbuild要求spec文件一定要有Source标签吗?

我在用RHEL制作一个商用软件,肯定不能提供源代码的那种。

问题是: 我读了一下spec的内容,似乎必须有Source:这个标签。我要你管rpmbuild -bb只编译二进制的时候如果我的spec文件里面没有Source,rpmbuild就会提示错误。

这是为什么呢?

(1) rpmbuild一定要求要有源码吗?
(2) 如果不给源码,一般linux上的商用软件用什么打包?

谢谢

MMMIX 发表于 2013-04-23 09:17

回复 1# weichuang02


    你自己编译的时候肯定是需要源码的,没有源码你编译什么?但是编译完了你可以只发布二进制包,那里面并不包含源码;你的源码在源码包中(*.src.rpm),这个你可以自己留下以供下次编译所用。

weichuang02 发表于 2013-04-24 09:55

MMMIX 发表于 2013-04-23 09:17 static/image/common/back.gif
回复 1# weichuang02




我的意思是说,我只想发布二进制包。但是rpmbuild似乎要求我必须在spec文件里面指定Source,否则rpmbuild就报错。这个怎么解决呢?

谢谢。

MMMIX 发表于 2013-04-25 09:20

weichuang02 发表于 2013-04-24 09:55 static/image/common/back.gif
我的意思是说,我只想发布二进制包。但是rpmbuild似乎要求我必须在spec文件里面指定Source,否则rpmbui ...

那你告诉我,你的二进制包是怎么来的?你手写二进制码么?还不是编译出来的。编译的时候不需要源码么?SPEC文件控制的就是这个编译的过程,没有源码怎么编译?另外,你不会以为在SPEC里面指定了SOURCE标签,编译出来的二进制包里面就包含源码了吧?我再重复一遍:二进制包里面不包含源码。

weichuang02 发表于 2013-04-26 17:28

MMMIX 发表于 2013-04-25 09:20 static/image/common/back.gif
那你告诉我,你的二进制包是怎么来的?你手写二进制码么?还不是编译出来的。编译的时候不需要源码么? ...

我知道你的意思了,rpmbuild本身是包含了编译+打包的过程的。我之前理解是先编译完,然后用rpmbuild打包而已。
页: [1]
查看完整版本: rpmbuild要求spec文件一定要有Source标签吗?