grub-devel.gnu.org archive mirror
 help / color / mirror / Atom feed
From: adrian15 <adrian15sgd@gmail.com>
To: Andrey Borzenkov <arvidjaar@gmail.com>
Cc: The development of GNU GRUB <grub-devel@gnu.org>
Subject: Re: Trying to build Rescue image for three different target and platform
Date: Sun, 16 Mar 2014 13:05:00 +0100	[thread overview]
Message-ID: <5325936C.1020501@gmail.com> (raw)
In-Reply-To: <20140316110428.5714ce94@opensuse.site>

El 16/03/14 08:04, Andrey Borzenkov escribió:
> В Sun, 16 Mar 2014 06:56:46 +0100
> adrian15 <adrian15sgd@gmail.com> пишет:
>
>>>
>>> To be honest, I do not understand what you are trying to do here.
>>
>> The same thing as in:
>>
>> https://forja.cenatic.es/plugins/scmgit/cgi-bin/gitweb.cgi?p=supergrub2/supergrub2.git;a=blob_plain;f=supergrub-meta-mkrescue;hb=22683e2b5fa0d65141c1be1a7487914b1d43f4dd
>>
>> (which uses Debian packages) but using source code.
>>
>
> Why would you want to build separate ISO for every platform? The whole
> point of using grub-mkrescue is to create single ISO image that
> supports and can be booted on all platforms.

Because I want to support all the GRUB2 platforms but not having a 
single 60 MB (random size guess) download for that.

The other reason is because a: i386-efi + x86_64_efi + x86_pc hybrid did 
not boot in a x86_64_efi only system. Right now I'm not sure if I built 
it from source or if I made the iso with Debian binaries but, what it's 
sure is that it did not boot at all. It just hung.

So I want a separate ISO for every platform.

>
>>
>>>> 8) What's the best way to build and install an hybrid system that
>>>> includes both: x86_64_efi and i386 - pc stuff?
>>>>
>>>
>>> Just built and install grub for each platform you want to use;
>>> grub-mkrescue will automatically include every platform it finds.
>>
>> Any advice for the special where I want to build x86_64_efi + x86_pc
>> hybrid disk?
>>
>
> Not really. Just build and install both platforms using the same prefix
> and run grub-mkrescue that is build to use the same prefix.
Ok.
>
> As mentioned, when building you should distinguish between host (grub
> utils) and target (boot time). It is perfectly valid to build utils for
> x86 and target for ARM as long as you have suitable cross tools. In
> your case all builds should use the same host (which defaults to target
> which may be wrong even for x86 case - consider 32 vs. 64 bit).
>
> See INSTALL how to set various options for each environment.
Ok,I'll check that.
>
>>>
>>> I prefer to build every platform in separate directory, there were
>>> issues with incomplete cleanup. If you hit one, please report.
>>
>> Well, as I don't want to have a separate directory for each build my
>> question would be:
>>
>> What is it the official commands for doing a safe cleanup?
>>
>
> I always used "make distclean". But IIRC there are some files that are
> not removed. Not sure to which extent they affect subsequent builds. I
> had problems when re-building on Windows but they should be fixed now.
>
>  From my point of view, "make distclean" is official and if it does not
> work it is a bug that has to be fixed.

make distclean . Written down.

>
>>
>>>
>>>> 9) A) What's the best way to remove grub configuration files installed
>>>> on the system so that I can start from scratch so that already built
>>>> target+platform grub binaries or configurations are ignored?
>>>>
>>>
>>> There are no configuration files after "make install" (if we do not
>>> count /etc/grub.d as configuration).
>>
>> I meant the ones that someone makes grub-mkrescue to look for the
>> /usr/local/lib/grub/i386-pc/boot_hybrid.img files which I suppose are
>> not found in source code but in the system (Gnu/Linux filesystem I mean).
>>
>
> There are no special configuration files. If grub-mkrescue is called
> without --directory option, it will enumerate all platforms found
> under /usr/local/lib/grub (in your example). Just place additional
> platform directory there and grub-mkrescue will pick it up.

So I just need to purge the /usr/local/lib/grub contents so that I can 
start again without the fear of grub-mkrescue picking up an earlier 
built platform (That's what I tried to achieve before with make 
uninstall by the way).

That's exactly what I wanted to know.


Thank you very much!

I do not know when I will be able to try all of this but now it's much 
more clear everything and I'll be able to report GRUB build errors (or 
runtime) more easily for my special use case.

adrian15
-- 
Support free software. Donate to Super Grub Disk. Apoya el software 
libre. Dona a Super Grub Disk. http://www.supergrubdisk.org/donate/


      reply	other threads:[~2014-03-16 12:05 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-09 16:14 Trying to build Rescue image for three different target and platform adrian15
2014-03-13  5:51 ` Andrey Borzenkov
2014-03-16  5:56   ` adrian15
2014-03-16  7:04     ` Andrey Borzenkov
2014-03-16 12:05       ` adrian15 [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5325936C.1020501@gmail.com \
    --to=adrian15sgd@gmail.com \
    --cc=arvidjaar@gmail.com \
    --cc=grub-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).