Alan Bartlett wrote:
On 08/03/2009, Farkas Levente lfarkas@lfarkas.org wrote:
now one last question/remark about the page: http://wiki.centos.org/HowTos/Custom_Kernel in sec 4. you wrote to comment out the "if a rhel kernel, apply the rhel config options" blocks, but for me it's not working. ie. in case of kernel-2.6.18-128.1.1.el5 if i comment out that part then i've got an error during kernel compile:
- for i in '*.config'
- mv kernel-2.6.18-i686-PAE.config .config
++ head -1 .config ++ cut -b 3-
- Arch=i386
- make ARCH=i386 nonint_oldconfig
CONFIG_PATA_ISAPNP make[1]: *** [nonint_oldconfig] Error 1 make: *** [nonint_oldconfig] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.88925 (%prep)
while if i leave it there than compile without any problem. anyway config-rhel-generic contains only option which are not set so why would be useful to comment out? so imho that part is not required what's more not working. yours.
I am sorry but I do not see from where your problem arises. It is possibly related to a language issue.
What I will say is that the technique described has been necessary to enable a user to build a customised CentOS kernel ever since the very first kernel-2.6.18-8.el5 package was released.
Will you please formulate your uncertainty into a question and then post it to the CentOS-5 General Support forum. In that way my colleague, good friend and co-maintainer of the article -- Akemi Yagi (aka toracat) -- may also see what it is that concerns you. We may then be able to clarify things.
ok so let me clarify this. imho keep the diff from rh's spec as little as possible is a good goal. on page sec 4: http://wiki.centos.org/HowTos/Custom_Kernel you wrote to delete/comment out the "if a rhel kernel, apply the rhel config options" part which is imho unnecessary, what's more wrong. the file config-rhel-generic contains only commented out kernel config options (except the CONFIG_RAW_DRIVER=y). so these won't hurt anyone. and if someone add the same kernel config param to the resulting config then the first kernel config ie: make -s ARCH=$Arch nonint_oldconfig > /dev/null will ignore those commented out configs. so i don't really understand the reason for this advice since it won't hurt anyone but can cause errors (like in my case in the above kernel compile error).
ps. anyway i also not understand why you prefer to modify rh's spec from: %define with_debug %{?_without_debug: 0} %{!?_without_debug: 1} to %define with_debug 0 instead of suggest to build with --without debug --without debuginfo?
pss. i we discuss this page:-) for me it's totally the same, but why you prefer/suggest to use %define buildid .your_identifier over to add a suffix to the dist tag (while you also modify dist in centosplus kernels)?
yours.
On Wed, Mar 11, 2009 at 7:05 AM, Farkas Levente lfarkas@lfarkas.org wrote:
Alan Bartlett wrote:
On 08/03/2009, Farkas Levente lfarkas@lfarkas.org wrote:
+ make ARCH=i386 nonint_oldconfig CONFIG_PATA_ISAPNP make[1]: *** [nonint_oldconfig] Error 1 make: *** [nonint_oldconfig] Error 2
ok so let me clarify this. imho keep the diff from rh's spec as little as possible is a good goal. on page sec 4: http://wiki.centos.org/HowTos/Custom_Kernel you wrote to delete/comment out the "if a rhel kernel, apply the rhel config options" part which is imho unnecessary, what's more wrong.
Levente,
Here's a bit of history on this subject.
When RHEL 5.0 came out, Johnny Hughes noticed that the centosplus kernel could not be built any more using his usual procedure. With his great wisdom, he soon figured out what was causing the problem. The spec file in RHEL5 had been rewritten in such a way that it now applies RHEL's template to the config, which knocked off all the changes he made to his config file.
So, his remedy for the issue was to remove that particular section you are referencing, and at (almost) the same time he updated the Wiki article with this new piece of information (to remove the offending section).
I have built centosplus 5.3 kernels -128 and -128.1.1 with that block removed without any issues.
Regarding the error you encountered, I have one suggestion/question for you. After running rpmbuild -bp, go to the BUILD directory (appropriate place to run make), get the .config that you are going to use (your customized version) and issue the command "make oldconfig". Would it finish without prompting you to enter something? Whenever I modify the config, I run this test and make sure this command does not require human intervention. This is because, if it pauses and waits for your input, then rpmbuild chokes at the step shown in your log (make ARCH=i386 nonint_oldconfig).
I hope I provided some useful information for you.
Akemi