How To Make Efi Bootloader |
|
|

Mar 22 2012, 03:55 PM




- Advanced Member
- Group: Developer
- Posts: 596
QUOTE (jadran @ Mar 22 2012, 02:40 PM)

to blackosx, Slice: this one has a proper way for fixing Xcode 4.1 gcc paths (it should be done this way in beggining)
[attachment=4212:buildgcc.sh.zip]
Thanks for the revised script, however I did then see the following:
CODE
- Building GCC chainload for x86_64-linux-gnu -
xcode-select: Error: No Xcode folder is set. Run xcode-select -switch <xcode_folder_path> to set the path to the Xcode folder.
- gmp-5.0.4 extracted
- gmp-5.0.4 configure...
- gmp-5.0.4 make...
- gmp-5.0.4 installed in /Users/nick/src/opt/local -
- mpfr-3.1.0 extracted
- mpfr-3.1.0 configure...
- mpfr-3.1.0 make...
- mpfr-3.1.0 installed in /Users/nick/src/opt/local -
- mpc-0.9 extracted
- mpc-0.9 configure...
- mpc-0.9 make...
- mpc-0.9 installed in /Users/nick/src/opt/local -
- binutils-2.22 extracted
Error: gmp-5.0.4 not installed, check logs
So I ran
sudo xcode-select -switch /Applications/Xcode.app and voila! all fine now.
Well done jadran
This post has been edited by blackosx: Mar 22 2012, 04:04 PM
10.8.3 | Asus Maximus IV Gene-Z (BiosRepo PM patched BIOS 3402) | i7-2600 3.40GHz | SSDT from Sam's ssdtPRGen.sh | Radeon 5770 1GB | 8GB DDR3
Booting with either Clover UEFI r1673 | Chameleon r2189 | RevoBoot v1.5.39 | XPC 0.90.41

Mar 22 2012, 05:07 PM




- Advanced Member
- Group: Comrade
- Posts: 159
QUOTE (blackosx @ Mar 22 2012, 04:55 PM)

So I ran sudo xcode-select -switch /Applications/Xcode.app and voila! all fine now.
Glad it works.
Looks like a problem of Xcode 4.3.1
http://developer.appcelerator.com/question...e-path-problems

Mar 22 2012, 08:45 PM




- Advanced Member
- Group: Developer
- Posts: 5,557
One another trick:
- install MacPorts (http://www.macports.org/)
- sudo port install apple-gcc42
- use this gcc instead of llmv-gcc

Mar 24 2012, 07:25 AM




- Advanced Member
- Group: Developer
- Posts: 827
Re-naming my CloverBrewer script to CloverGrower.
While 'brew' is great, its just not up to this task.
Maybe what is needed is a Clover.rb ( brew formula for Clover) Hmmm, another day perhaps.
Using buildgcc.sh instead of 'brew' and 4.7.0 gcc.
Anybody wanting to Grow some Clover, I will post as soon as i debug on my NOT SO CLEAN System.
Can't be bothered installing new system.
@slice, looking good so far, well when I can build again that is.
edit:
This is shaping up really well, stay tuned...
This post has been edited by STLVNUB: Mar 24 2012, 09:06 PM

and NO I don't have 24gig, It's only 16gig

Mar 26 2012, 08:40 AM




- Advanced Member
- Group: Developer
- Posts: 5,557
Can anybody creates a script for creating Installer with customize: 32 or 64, Volume, FAT32 or HFS+, theme?

Mar 26 2012, 08:56 PM

- Advanced Member
- Group: Staff
- Posts: 714
I am sorry to say this but I have to:
This is going to be as on Linux world, where people spend several time trying to figure out how to build x or y or z, instead spending that precious time to actually develop something.
I don't get the need of building UEFI stuff on OS X, nobody does it and that includes Apple, why we should do so?
The source cannot be builded on Windows so this IMHO is a lost since most of UEFI tools are designed for Windows only, unless Clover will be/work only as a replacement and not designed to work on UEFI boards, and if is like that I don't see the need to replace Chameleon with it.
Sad to see that most developers ignore the very basic UEFI concept, modular, and that includes AMI as others...

Mar 28 2012, 07:17 PM



- Member
- Group: Comrade
- Posts: 55
QUOTE (THe KiNG @ Mar 26 2012, 01:56 PM)

I am sorry to say this but I have to:
This is going to be as on Linux world, where people spend several time trying to figure out how to build x or y or z, instead spending that precious time to actually develop something.
I don't get the need of building UEFI stuff on OS X, nobody does it and that includes Apple, why we should do so?
The source cannot be builded on Windows so this IMHO is a lost since most of UEFI tools are designed for Windows only, unless Clover will be/work only as a replacement and not designed to work on UEFI boards, and if is like that I don't see the need to replace Chameleon with it.
Sad to see that most developers ignore the very basic UEFI concept, modular, and that includes AMI as others...
Try to build a dual boot Win7-64/OSX on a UEFI board with 3TB disks and you'll see that Chameleon will not work... A UEFI boot loader like Clover will become more important as manufacturers phase out the older BIOS, MBR and MS-DOS partition tables, 32-bit, etc. I do agree that the current state of UEFI implementation and development is a mess...
I think the work Slice is doing is ground-breaking and will become more important over time.

Mar 28 2012, 09:22 PM

- Advanced Member
- Group: Staff
- Posts: 714
QUOTE (gsly @ Mar 28 2012, 10:17 PM)

Try to build a dual boot Win7-64/OSX on a UEFI board with 3TB disks and you'll see that Chameleon will not work...
I don't have that much p0rn... j/k
QUOTE (gsly @ Mar 28 2012, 10:17 PM)

A UEFI boot loader like Clover will become more important as manufacturers phase out the older BIOS, MBR and MS-DOS partition tables, 32-bit, etc.
Agree, well the problem is that at this moment Clover is designed as a 'replacement' for the UEFI BIOS(DUET) and does not work in standalone mode(rEFIt)
QUOTE (gsly @ Mar 28 2012, 10:17 PM)

I do agree that the current state of UEFI implementation and development is a mess...
On Vendors part(read AMI) yes, cant say the same about Insyde or Pheonix(b/c is hard to find something made by them), problem is that any recent board or notebook
use ALL AMI APTIO CRAPEDKII development works good IMHO.
QUOTE (gsly @ Mar 28 2012, 10:17 PM)

I think the work Slice is doing is ground-breaking and will become more important over time.
Agree, but, IMHO not as is done now, a mixture of sources(and type of) from various projects, no coding standards(chaos), built on unsupported platform(OS X) with various "tips and tricks" on how to make it, that make people(at least me) to run, and so on...
From the very same reason I didn't got involved too much on Chameleon.
I didn't write previous post or this one to upset or offend someone, far from that, but a signal that things are going in a wrong way in OSX86, in general, and this one, in particular, and may be the reason why not many get involved...

Mar 29 2012, 01:52 PM



- Member
- Group: Comrade
- Posts: 55
QUOTE (THe KiNG @ Mar 28 2012, 02:22 PM)

I didn't write previous post or this one to upset or offend someone, far from that, but a signal that things are going in a wrong way in OSX86, in general, and this one, in particular, and may be the reason why not many get involved...
I think the bigger problem we'll face with OSX is that Apple appears to be moving it toward IOS and that means one day they'll likely dump OSX in favor of IOS.
I haven't had the time yet to dive into the source/SDK's to see what Slice has been fighting through, but it sounds like he's been fighting lots of issues in the SDK code. I do plan to test out his solution soon and hope to provide some feedback...
BTW, my laptop also has an Insyde EFI bios that looks and pretends to be an old-school bios... Really bad implementation. At least in this case, Chameleon still works

Mar 31 2012, 02:42 AM




- Advanced Member
- Group: Developer
- Posts: 827
Have a "new" script CloverGrower.
Newest Version ALWAYS ON TOPPlease try it out.
enjoy

Build Clover from ZERO, Well, almost.
You will need Xcode command-line tools already installed.
************************************************************
Newest Versions always in here.
IMPORTANT: Always run CloverGrower.command First, especially when upgrading.Will always use latest version of GCC, currently
4.7.2Version 4.9 posted soon
All previous versions withdrawn.
Bugfixes: a few and then some.
Enhancements:V4.8
Someone requested the ability to compile just 64Bit, so type "clover 64" at terminal and it will only compile/build 64bit, BUT no Package at this time.
Package making requires 32/64Bit compilation.
You can place your OWN rc.local and rc.shutdowm.local in User/etc and they will be incorporated into the Package that gets built.
What is rc.local? Good question
rc.local: Run at boot, Used primarily to save Clover ( bios booted ) OR UEFI ( UEFI booted ) boot.log, could easily be used for anything.
rc..shutdown.local: Run at shutdown, Used primarily to save nvram.plist, could easily be used for anything.
***************************************************
Now installs
Clover Compile tools to either:
1.
CloverGrowerV3.*/src/CloverTools2.
/opt/local 3.
/usr/local.Use Option 1: Keeps it all in the one folder.Compile Tools, Clover source and edk2 source
Use Option 2 or 3, IF you update CloverGrower regularly, You WON'T need to rebuild Compile Tools.
What is it:CloverGrower is a helper script to download and compile Clover, the NEW UEFI bootloader from Slice.
It does this by utilising available scripts, some tweaked, to download and compile all the tools and
source code necessary to produce a working version of Clover.
How to run:Extract archive, double click CloverGrower.command
When first run:1.
Creates link to CloverGrower.command in /usr/local/bin/clover
Then, only need to open terminal and type 'clover' to run CloverGrower.command
run clover h To display help file
2.
Checks for XCode command line tools (gcc) and opens XCode Developer Page IF it is NOT installed, then exits.
You will need top get XCode command line tools and install them, then re-run clover.
3.
Downloads, compiles and installs:
GCC4.7.2 plus the needed tools.
4.
Does a svn checkout of edk2
Builds edk2 BaaseTools
Does a svn checkout of Clover
5.
Copies and re-configures some files in edk2 and Clover using some files in the Files folder.
Then
1) Compiles X64/IA32 Clover/rEFIt
2) Makes pkg
3) archives pkg to BuiltPKG/Clover_revision i.e BuiltPKG/911
4) Opens BuilTPKG
BuiltPKG contains
e.g
CloverCD
Clover_v2_rL911.pkg
Clover_v2_rL911.zip
CloverISO
Clover_v2_rL911.pkg.md5
i386
************************************************************
This post has been edited by STLVNUB: Dec 4 2012, 05:46 AM

and NO I don't have 24gig, It's only 16gig

Mar 31 2012, 06:37 AM




- Advanced Member
- Group: Developer
- Posts: 5,557
QUOTE (STLVNUB @ Mar 31 2012, 06:42 AM)

Have a "new" script CloverGrower.
Please try it out.
[attachment=4223:CloverGrower.zip]
Pretty sure this one WORKS, well, better than other one.

This is developed on Lion, but should work on SL.
Thank you for your hard work. I made a link from first post to your post.
Please provide some explanations and instructions for noobs... Hmm, noobs are going to compile Clover?

Mar 31 2012, 07:38 AM




- Advanced Member
- Group: Developer
- Posts: 827
Hey Slice, one thing.
How do you do your versions. Like in CloverX64 'info' Clover revision 320 : rEfiT revision 345
My script only produces one, would like to go with your way.
Thanks

and NO I don't have 24gig, It's only 16gig

Mar 31 2012, 11:18 AM




- Advanced Member
- Group: Developer
- Posts: 5,557
QUOTE (STLVNUB @ Mar 31 2012, 11:38 AM)

Hey Slice, one thing.
How do you do your versions. Like in CloverX64 'info' Clover revision 320 : rEfiT revision 345
My script only produces one, would like to go with your way.
Thanks
All my codes in svn.
I take revision separately in both scripts;
Clover build with cbuld.sh
CODE
# Build the edk2 DuetPkg
echo Running edk2 build for Clover$Processor
#rm $WORKSPACE/Clover/Version.h
echo "#define FIRMWARE_VERSION \"2.31\"" > $WORKSPACE/Clover/Version.h
echo "#define FIRMWARE_BUILDDATE \"`date \"+%Y-%m-%d %H:%M:%S\"`\"" >> $WORKSPACE/Clover/Version.h
echo "#define FIRMWARE_REVISION L\"`svnversion Clover -n | tr -d [:alpha:]`\"" >> $WORKSPACE/Clover/Version.h
build -p $WORKSPACE/Clover/Clover$Processor.dsc -a $PROCESSOR -b $VTARGET -t $TARGET_TOOLS -n 3 $*
and refit build with build64.sh
CODE
set -e
shopt -s nocasematch
svnversion -n | tr -d [:alpha:] >vers.txt
...........
rm -f $WORKSPACE/Clover/rEFIt_UEFI/Version.h
echo "#define FIRMWARE_VERSION \"2.31\"" > $WORKSPACE/Clover/rEFIt_UEFI/Version.h
echo "#define FIRMWARE_BUILDDATE \"`date \"+%Y-%m-%d %H:%M:%S\"`\"" >> $WORKSPACE/Clover/rEFIt_UEFI/Version.h
#echo "#define FIRMWARE_REVISION \"`svnversion -n | tr -d [:alpha:]`\"" >> $WORKSPACE/Clover/rEFIt_UEFI/Version.h
echo "#define FIRMWARE_REVISION \"`cat Clover/rEFIt_UEFI/vers.txt`\"" >> $WORKSPACE/Clover/rEFIt_UEFI/Version.h
So these Version.h files located in different folders.
And I compile Clover not everytime when I compile refit while version.h are changed with every compilation.

Mar 31 2012, 04:16 PM




- Advanced Member
- Group: Developer
- Posts: 827
Ok, knew that already. Trying something different in script to fix it here.
Just a suggestion, but why not include EFI folder in svn?
Would certainly make it a bit easier to manage/maintain/build/deploy.
edit:
The problem I have here is if I cd into edk2/Clover and do svn info the revision is actually rEFIt's
same thing for svnversion.
A month or so ago there were 2 revisions, i.e 320:345, now there is one 345.
Seems to be something wrong, but not major problem.
Also, memory info still not displaying correctly in System Information.
First screen "About this Mac" is ok but click on "More Info..." and memory says 4G ????
and error reporting in System Information memory.
This post has been edited by STLVNUB: Mar 31 2012, 05:39 PM

and NO I don't have 24gig, It's only 16gig

Mar 31 2012, 06:55 PM




- Advanced Member
- Group: Developer
- Posts: 5,557
QUOTE (STLVNUB @ Mar 31 2012, 08:16 PM)

Just a suggestion, but why not include EFI folder in svn?
Would certainly make it a bit easier to manage/maintain/build/deploy.
There is still no final decision what is the folder structure should be. But there is a problem to rename or move folders on svn. Delete and then create new.
So this time I will not do this.
QUOTE
edit:
The problem I have here is if I cd into edk2/Clover and do svn info the revision is actually rEFIt's
same thing for svnversion.
A month or so ago there were 2 revisions, i.e 320:345, now there is one 345.
Seems to be something wrong, but not major problem.
This is real values. They depends on how I commit changes. If I commit as a whole Clover folder< then the revision will be the same.
If I commit only rFEIt then revisions will be different.
QUOTE
Also, memory info still not displaying correctly in System Information.
First screen "About this Mac" is ok but click on "More Info..." and memory says 4G ????
and error reporting in System Information memory.
I don't know why because in Lion sources of AppleSMBIOS became closed. I have only Snow version.

Mar 31 2012, 08:38 PM




- Advanced Member
- Group: Developer
- Posts: 827
QUOTE (Slice @ Apr 1 2012, 04:55 AM)

This is real values. They depends on how I commit changes. If I commit as a whole Clover folder< then the revision will be the same.
If I commit only rFEIt then revisions will be different.
That explains it.
Is it possible to include a txt file like revision.txt in both Clover and rEFIt folders.
I would like to be able to show both firmware values in 'info' and having two separate revision files would make it
easier to do.
Thanks
As a side note:
debugging script on Mnt Lion, found a pkg at
http://cloud.github.com/downloads/kennethr...GCC-10.7-v2.pkgto give me gcc 4.2
running the script, downloaded 4.6.3 and compiled ok.
No svn found...
Now I need to find svn binaries and script should be almost done...
Then it will be from 'ZERO'...
edit: fixed see
http://www.projectosx.com/forum/index.php?...ost&p=17480 This post has been edited by STLVNUB: Apr 2 2012, 04:20 AM

and NO I don't have 24gig, It's only 16gig

Apr 6 2012, 10:18 AM



- Advanced Member
- Group: Developer
- Posts: 1,212
Hi guys. Can anybody speed me up in understanding flattened dev tree?
Particularly this one here:
DevTree.png ( 27.77K )
Number of downloads: 47What is the name here, what is the value, and what could be those two addresses?
Thanks.
Edit: never mind. Found on Google and in sources.
This post has been edited by dmazar: Apr 6 2012, 12:06 PM
HW: Asus P8P67-M, Intel Core i5-2300, 4GB, XFX HD-567X-ZHH3 SW: SL, L, ML: Clover UEFI boot

Apr 6 2012, 09:22 PM




- Advanced Member
- Group: Developer
- Posts: 827
And the six million dollar question is:
Where the f**k did the other thread go???

and NO I don't have 24gig, It's only 16gig

Apr 7 2012, 03:33 AM

- Advanced Member
- Group: Staff
- Posts: 714
QUOTE (STLVNUB @ Apr 7 2012, 12:22 AM)

And the six million dollar question is:
Where the f**k did the other thread go???
For some reason was set to invisible, guess someone didn't looked on/what buttons, more coffee?

Anyway is set back.

Apr 7 2012, 04:14 AM




- Advanced Member
- Group: Developer
- Posts: 827
Ok thanks, Phew!!!, thought apple strikes again.

and NO I don't have 24gig, It's only 16gig