Jump to content
30960 posts in this topic

Recommended Posts

Hi @Zenith432

 

Another issue (no manually copy files but with script)

 

TOOLCHAIN_DIR: /Users/mathieu/src/opt/local
MTOC_PREFIX: /usr/local/bin/
NASM_PREFIX: /Users/mathieu/src/opt/local/bin/
NASM_VER: 2.14.02
Building from: /Users/mathieu/src/EDK2
Build environment: Darwin-18.7.0-x86_64-i386-64bit
Build start time: 14:44:47, Sep.05 2019

WORKSPACE        = /Users/mathieu/src/EDK2
EDK_TOOLS_PATH   = /Users/mathieu/src/EDK2/BaseTools
CONF_PATH        = /Users/mathieu/src/EDK2/Conf

Processing meta-data ... done!


build.py...
 : error C0DE: Unknown fatal error when processing [/Users/mathieu/src/EDK2/MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf]
	
(Please send email to devel@edk2.groups.io for help, attaching following call stack trace!)

(Python 2.7.10 on darwin) Traceback (most recent call last):
  File "/Users/mathieu/src/EDK2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2493, in Main
    MyBuild.Launch()
  File "/Users/mathieu/src/EDK2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2287, in Launch
    self._BuildPlatform()
  File "/Users/mathieu/src/EDK2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 1742, in _BuildPlatform
    self._BuildPa(self.Target, Pa, FfsCommand=CmdListDict,PcdMaList=PcdMaList)
  File "/Users/mathieu/src/EDK2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 1236, in _BuildPa
    AutoGenObject.CreateCodeFile(True)
  File "/Users/mathieu/src/EDK2/BaseTools/Source/Python/Common/caching.py", line 18, in CallMeHere
    Value = self._function(obj, *args,**kwargs)
  File "/Users/mathieu/src/EDK2/BaseTools/Source/Python/AutoGen/PlatformAutoGen.py", line 171, in CreateCodeFile
    Ma.CreateCodeFile(CreateModuleCodeFile)
  File "/Users/mathieu/src/EDK2/BaseTools/Source/Python/AutoGen/ModuleAutoGen.py", line 1847, in CreateCodeFile
    LibraryAutoGen.CreateCodeFile()
  File "/Users/mathieu/src/EDK2/BaseTools/Source/Python/AutoGen/ModuleAutoGen.py", line 1892, in CreateCodeFile
    with GlobalData.cache_lock:
AttributeError: __exit__

- Failed -

 

26 minutes ago, vector sigma said:

@Matgen84 have you tried Clover from github?

 

What is the difference between discard local change and stash local change? The repo don't contain patches_edk2 folder, it's normal.

Where Opt and Tools folders aren't present in src/EDK2?

 

Yes, I try your script: works fine except issue below. I can't make PKG

 

========= Translating Resources ========
/Users/mathieu/src/EDK2/Clover/CloverPackage/package/../../../opt/local
Updating 'en' strings file for CloverUpdater... <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>com.apple.ibtool.errors</key>
	<array>
		<dict>
			<key>description</key>
			<string>Interface Builder could not open the document MainMenu.xib" because it does not exist.</string>
		</dict>
	</array>
</dict>
</plist>
Generation failed. Not extracting locale strings from source XIB file
Updating 'en' strings file for Clover Preference Panel... <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>com.apple.ibtool.errors</key>
	<array>
		<dict>
			<key>description</key>
			<string>Interface Builder could not open the document CloverPrefpane.xib" because it does not exist.</string>
		</dict>
	</array>
</dict>
</plist>
Generation failed. Not extracting locale strings from source XIB file
Updating strings file for Clover Preference Panel... done
stat: ../CloverUpdater/CloverUpdater.strings: stat: No such file or directory
stat: ../CloverPrefpane/CloverPrefpane.strings: stat: No such file or directory
po4a-clover.cfg:12: The '../CloverUpdater/CloverUpdater.strings' master file does not exist.

make: *** [pkg] Error 2
logout

 

Edited by Matgen84

Not working here (Using a fresh install of the "standard" Build_Clover.command)...

 

================================================================================
Building Clover
                             <--------------------------------------------------
================================================================================
boot6
                             <--------------------------------------------------
TOOLCHAIN_DIR: /Users/dan/src/opt/local
`-x64' is deprecated because Clover is 64 bit only. This message will be removed soon
MTOC_PREFIX: /usr/local/bin/
NASM_PREFIX: /Users/dan/src/opt/local/bin/
NASM_VER: 2.14.02
Building from: /Users/dan/src/edk2

Running edk2 build for CloverX64 using the command:
build  -D NO_GRUB_DRIVERS_EMBEDDED --conf=/Users/dan/src/edk2/Conf -D USE_LOW_EBDA -p Clover/Clover.dsc  -a X64 -b RELEASE -t XCODE8 -n 9 

Build environment: Darwin-18.7.0-x86_64-i386-64bit
Build start time: 16:32:40, Sep.05 2019

WORKSPACE        = /Users/dan/src/edk2
EDK_TOOLS_PATH   = /Users/dan/src/edk2/BaseTools
CONF_PATH        = /Users/dan/src/edk2/Conf


Architecture(s)  = X64
Build target     = RELEASE
Toolchain        = XCODE8

Active Platform          = /Users/dan/src/edk2/Clover/Clover.dsc
Flash Image Definition   = /Users/dan/src/edk2/Clover/Clover.fdf

Processing meta-data .

build.py...
/Users/dan/src/edk2/Clover/Clover.dsc(107): error 000E: File/directory not found in workspace
	/Users/dan/src/edk2/NetworkPkg/Library/DxeNetLib/DxeNetLib.inf
 

- Failed -
Build end time: 16:32:42, Sep.05 2019
Build total time: 00:00:02


o_Ops, ./ebuild.sh exited with error(s), aborting..
Mac-mini:~ dan$ 

 

Edited by D-an-W
14 minutes ago, Matgen84 said:

What is the difference between discard local change and stash local change?

update overwriting any change you may have done vs keep your changes during an update.The second can lead in a request to resolve conflicts.

 

16 minutes ago, Matgen84 said:

Where Opt and Tools folders aren't present in src/EDK2?

Should be autogenerated, I'll try from scratch to see what happen. 

This is what actually I have:

 

1504753912_Schermata2019-09-05alle17_37_27.png.85e927bda51fea068109cb4e31e6a126.png

17 minutes ago, Matgen84 said:

Yes, I try your script: works fine except issue below. I can't make PKG

I think the culprit is the .gitignore that ignore these files:

# Translation files
CloverUpdater.strings
CloverPackage/CloverUpdater/src/*.lproj
CloverPrefpane.strings
CloverPackage/CloverPrefpane/src/*.lproj

..when should not. Not sure why Slice wanted ignore them entirely. The base ones (English.lproj or en.lproj) must be always present at least. The difference from me and you is that I have it.

 

20 minutes ago, Matgen84 said:

 The repo don't contain patches_edk2 folder, it's normal.

Sure, you don't need anything else, nor edk2. It contains all you need. 

 

  • Thanks 1
1 hour ago, vector sigma said:

update overwriting any change you may have done vs keep your changes during an update.The second can lead in a request to resolve conflicts.

 

Should be autogenerated, I'll try from scratch to see what happen. 

This is what actually I have:

 

1504753912_Schermata2019-09-05alle17_37_27.png.85e927bda51fea068109cb4e31e6a126.png

I think the culprit is the .gitignore that ignore these files:


# Translation files
CloverUpdater.strings
CloverPackage/CloverUpdater/src/*.lproj
CloverPrefpane.strings
CloverPackage/CloverPrefpane/src/*.lproj

..when should not. Not sure why Slice wanted ignore them entirely. The base ones (English.lproj or en.lproj) must be always present at least. The difference from me and you is that I have it.

 

Sure, you don't need anything else, nor edk2. It contains all you need. 

 

 

Great job :) Why Option 6 to 9 don't work here... Maybe because there is no new commit.

 

fatal: not a git repository (or any of the parent directories): .git
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.

 

Edited by Matgen84
  • Like 1

I did my build clover with the GGC8 is what is needed because we use EDK2?

tHATS verry long to Build GGC. Is the GGC still required ? ? ?

Edited by chris1111
  • Like 1
41 minutes ago, chris1111 said:

I did my build clover with the GGC8 is what is needed because we use EDK2?

tHATS verry long to Build GGC. Is the GGC still required ? ? ?

Of course not.  On macOS the default toolchain is XCODE8.

You need mtoc which can be built with buildmtoc.sh and place it in one of the places ebuild.sh looks for it.

You need to have Xcode.app installed and xcode-select set to point to it.

 

I have gcc 9.2 working, maybe I'll check it in later this week. 

  • Like 2
1 hour ago, Matgen84 said:

 

Great job :) Why Option 6 to 9 don't work here... Maybe because there is no new commit.

 


fatal: not a git repository (or any of the parent directories): .git
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.

 

Could you, kindly, try a fresh repository without even the opt directory to see if all is fine now?

Just open buildme and select:

4) build all

on the fresh souce. thanks in advance

3 hours ago, D-an-W said:

Not working here (Using a fresh install of the "standard" Build_Clover.command)...

Hi, not sure Build_Clover.command can build latest source, but if you want you can try the new Clover on github by using the attached wrapper

 

 

 

Clover.zip

Edited by vector sigma
corrected
  • Thanks 2

Thanks for the file, it didn't complete the build however...

Building ... /Users/dan/src/CloverBootloader/Library/OpensslLib/OpensslLibNull.inf [X64]
[CC] DivU64x32
[CC] SetMem
[CC] InternalGetSpinLockProperties
"/nasm" -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/X64/ -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/X64/ -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/ -I/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/DEBUG/ -I/Users/dan/src/CloverBootloader/MdePkg/ -I/Users/dan/src/CloverBootloader/MdePkg/Include/ -I/Users/dan/src/CloverBootloader/MdePkg/Include/X64/ -f macho64 -o /Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.obj /Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.iii
/bin/sh: /nasm: No such file or directory
make: *** [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.obj] Error 127


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic]


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseLib/BaseLib]


build.py...
 : error F002: Failed to build module
	/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf [X64, XCODE8, RELEASE]

- Failed -
Build end time: 21:18:46, Sep.05 2019
Build total time: 00:00:13

Dans-Mac-mini:~ dan$ 

 

  • Like 1
2 hours ago, D-an-W said:

Thanks for the file, it didn't complete the build however...


Building ... /Users/dan/src/CloverBootloader/Library/OpensslLib/OpensslLibNull.inf [X64]
[CC] DivU64x32
[CC] SetMem
[CC] InternalGetSpinLockProperties
"/nasm" -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/X64/ -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/X64/ -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/ -I/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/DEBUG/ -I/Users/dan/src/CloverBootloader/MdePkg/ -I/Users/dan/src/CloverBootloader/MdePkg/Include/ -I/Users/dan/src/CloverBootloader/MdePkg/Include/X64/ -f macho64 -o /Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.obj /Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.iii
/bin/sh: /nasm: No such file or directory
make: *** [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.obj] Error 127


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic]


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseLib/BaseLib]


build.py...
 : error F002: Failed to build module
	/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf [X64, XCODE8, RELEASE]

- Failed -
Build end time: 21:18:46, Sep.05 2019
Build total time: 00:00:13

Dans-Mac-mini:~ dan$ 

 

 

23 minutes ago, STLVNUB said:

Looks like it can't find nasm, is it installed?

More than likely not set properly in script.

Yes it is a bug, the last. I made the buildme script to find the first worthy nasm to build Clover, but in ebuild.sh there's something apparently weird because looks for hard coded paths. Not sure why, but /opt/local/bin/nasm for example is preferred. Ok, the one shipped with macOS is bad, so I can assume someone wanted this for convenience.

/bin/sh: /nasm: No such file or directory

yep, no nasm at "/", that's the problem. Tomorow I'll fix it.

  • Like 1
  • Thanks 1
32 minutes ago, Slice said:

Up to now revision 5071 on sf.net is the same as latest on github.

There was talk y e a r s ago, glad to see you guys finally saw the light.

Now to top it off, how about getting rid of patches and adjusting Clover

Go with the flow.

  • Like 1
9 hours ago, vector sigma said:

Could you, kindly, try a fresh repository without even the opt directory to see if all is fine now?

Just open buildme and select:


4) build all

on the fresh souce. thanks in advance

 

I've got always some issue. I don't understand why. Terminal file in attachment

Thanks

Test on Terminal

1 hour ago, ellaosx said:

is it still ok to use sf and compile for now?

Yes, but need to upgrade edk2 to latest stable edk2-stable201908.

 

1242717681_Cloverr5071SFBuild.thumb.png.dcd3b1a0f9b44905f2826ea9e654f4b4.png

 

For those still wanting to compile Clover from SourceForge via svn

1.  Delete old ~/src/edk2 folder (but keep existing ~/src/opt and ~/src/tools folders)
2.  Download latest stable edk2-stable201908.zip & extract into ~/src, renaming it edk2
3.  Open terminal and type the following lines, followed by <Enter> to prepare build tools

cd ~/src/edk2
svn co svn://svn.code.sf.net/p/cloverefiboot/code/ Clover
source edksetup.sh
cp -R Clover/Patches_for_EDK2/* ./
make -C BaseTools

4.  Open terminal and type the following lines, followed by <Enter> to build Clover

cd ~/edk2/Clover
ebuild.sh -fr -D NO_GRUB_DRIVERS_EMBEDDED                  //builds Clover with boot6
ebuild.sh -fr -mc --no-usb -D NO_GRUB_DRIVERS_EMBEDDED     //builds Clover with boot7

5.  Open terminal and type the following lines, followed by <Enter> to build Clover installer pkg and/or iso

cd CloverPackage
./makepkg
make iso

 

If you want to build from scratch from CloverHackyColor GIT

1.  Open terminal and type the following lines, followed by <Enter> to download Clover source files.  Note:  no need to download edk2 :)...

mkdir ~/src // if src folder does not already exist in user's home folder
cd ~/src
git clone https://github.com/CloverHackyColor/CloverBootloader.git

2.  Install/build nasm

cd CloverBootloader
./buildnasm.sh

3.  Run @vector sigma's buildme script...

./buildme // Select option 4 (build all)

1230012398_Cloverr5072fromGIT.png.826c57746d81f9e4ec1cef6d14f49327.png

  • Like 1
  • Thanks 2

Working with GitHub is simpler.

About sf.net I will propose the follow sequence

1. cd ~

2. mkdir src

3. cd src

4. git clone https://github.com/CloverHackyColor/edk2.git --depth 1

SIC! There is already patched EDK2. depth 1 make your download times smaller.

5. cd edk2

6. make -C BaseTools/Source/C

7. svn co svn://svn.code.sf.net/p/cloverefiboot/code/ Clover

8. source edksetup.sh

9. cd Clover

10. ./buildnasm.sh

11. ./buildgettext.sh

12. ./buildmtoc.sh

13. ./ebuild.sh -fr -mc --no-usb -D NO_GRUB_DRIVERS_EMBEDDED   if you want BIOS_BLOCK_IO legacy boot7
14. ./ebuild.sh -fr -D NO_GRUB_DRIVERS_EMBEDDED

15. cd CloverPackage

16 ./makepkg

17. ./makeiso if you want

 

 

  • Thanks 2
  • Haha 1
6 hours ago, vector sigma said:

 

Yes it is a bug, the last. I made the buildme script to find the first worthy nasm to build Clover, but in ebuild.sh there's something apparently weird because looks for hard coded paths. Not sure why, but /opt/local/bin/nasm for example is preferred. Ok, the one shipped with macOS is bad, so I can assume someone wanted this for convenience.


/bin/sh: /nasm: No such file or directory

yep, no nasm at "/", that's the problem. Tomorow I'll fix it.

 

18 minutes ago, ellaosx said:

why the need of #2, vector's builme script wont do it automatically?

 

As @vector sigma mentioned in the post above yours, there is a bug/incompatibility in the buildme script at the moment ---> nasm not present error thrown up.  This should be fixed soon.

 

I found in my situation that running the buildnasm script before the buildme script worked to compile Clover successfully :).

 

PS Anyone notice "invalid option 5" when selecting to update Clover (discard local changes)?

buildme Beta, Clover v2.5k r5072 (SHA: ac97cf5)
Remote SHA: ac97cf5

1) build Clover
2) make pkg
3) make iso
4) build all
5) update Clover (discard local changes)
6) update Clover (stash local changes)
7) status
8) show diff
9) quit
Please enter your choice: 5
invalid option 5

 

  • Like 1
  • Thanks 1
7 hours ago, Matgen84 said:

 

I've got always some issue. I don't understand why. Terminal file in attachment

Thanks

Test on Terminal

 

4 hours ago, fusion71au said:

As @vector sigma mentioned in the post above yours, there is a bug/incompatibility in the buildme script at the moment ---> nasm not present error thrown up.  This should be fixed soon.

 

I found in my situation that running the buildnasm script before the buildme script worked to compile Clover successfully :).

 

14 hours ago, D-an-W said:

Thanks for the file, it didn't complete the build however...


Building ... /Users/dan/src/CloverBootloader/Library/OpensslLib/OpensslLibNull.inf [X64]
[CC] DivU64x32
[CC] SetMem
[CC] InternalGetSpinLockProperties
"/nasm" -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/X64/ -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/X64/ -I/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/ -I/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/DEBUG/ -I/Users/dan/src/CloverBootloader/MdePkg/ -I/Users/dan/src/CloverBootloader/MdePkg/Include/ -I/Users/dan/src/CloverBootloader/MdePkg/Include/X64/ -f macho64 -o /Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.obj /Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.iii
/bin/sh: /nasm: No such file or directory
make: *** [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic/OUTPUT/X64/IoFifo.obj] Error 127


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic]


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/dan/src/CloverBootloader/Build/Clover/RELEASE_XCODE8/X64/MdePkg/Library/BaseLib/BaseLib]


build.py...
 : error F002: Failed to build module
	/Users/dan/src/CloverBootloader/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf [X64, XCODE8, RELEASE]

- Failed -
Build end time: 21:18:46, Sep.05 2019
Build total time: 00:00:13

Dans-Mac-mini:~ dan$ 

 

fixed! (at github)

  • Thanks 5
×
×
  • Create New...