Package Details: uefi-shell-git 24185.3b03b5e990-1

Git Clone URL: https://aur.archlinux.org/uefi-shell-git.git (read-only)
Package Base: uefi-shell-git
Description: UEFI Shell v2 - from Tianocore EDK2 - GIT Version
Upstream URL: https://github.com/tianocore/edk2
Licenses: BSD
Conflicts: uefi-shell, uefi-shell-svn
Provides: uefi-shell
Submitter: ridikulusrat
Maintainer: None
Last Packager: Hello71
Votes: 47
Popularity: 0.045635
First Submitted: 2015-07-22 00:17
Last Updated: 2018-06-23 15:42

Dependencies (3)

Required by (0)

Sources (1)

Pinned Comments

Hello71 commented on 2016-09-20 14:10

If you have any problems (e.g. does not compile) with this package, consider the binary shells: https://github.com/tianocore/edk2/releases.

Latest Comments

1 2 3 Next › Last »

GeneArch commented on 2019-10-01 18:05

By looking at the file src/edk2/ShellPkg/ShellPkg.dsc

It is clear 2 versions of the shell are built. The 2nd one is :

# # Build a second version of the shell with all commands integrated # ShellPkg/Application/Shell/Shell.inf { <Defines> FILE_GUID = EA4BB293-2D7F-4456-A681-1F22F42CD0BC

So this is the one we will use

i.e. the shell to rename is Shell_EA4BB293-2D7F-4456-A681-1F22F42CD0BC.efi

Which means the change to PKGBUILD is simple:

In package()

Add a variable:

GUID="EA4BB293-2D7F-4456-A681-1F22F42CD0BC"

change install to use above guid
install -D ..../Shell_${GUID}.efi" ...

d_fajardo commented on 2019-09-14 15:27

I am getting the same error as GeneArch. I assume we can just rename one of the efi files as Shell.efi but which one?

GeneArch commented on 2019-09-01 19:34

Getting Error now: src/edk2/Build/Shell/RELEASE_GCC5/X64/Shell.efi': No such file or director

Directory contains these now not Shell.efi 900 src/edk2/Build/Shell/RELEASE_GCC5/X64/Shell_7C04A583-9E3E-4f1c-AD65-E05268D0B4D1.efi 968 src/edk2/Build/Shell/RELEASE_GCC5/X64/Shell_EA4BB293-2D7F-4456-A681-1F22F42CD0BC.efi

Not sure what the difference is or if one of them is what we should now be using?

Build went fine, this error is in install phase

SanderMaijers commented on 2018-08-10 12:49

make[2]: Entering directory '/srv/installers/AUR/uefi-shell-git/src/edk2/BaseTools/Source/C/VfrCompile'
g++ -c -I Pccts/h -I .. -I ../Include/Common -I ../Include/ -I ../Include/IndustryStandard -I ../Common/ -I .. -I . -I ../Include/X64/  -O2 -Wno-unused-result EfiVfrParser.cpp -o EfiVfrParser.o
g++ -c -I Pccts/h -I .. -I ../Include/Common -I ../Include/ -I ../Include/IndustryStandard -I ../Common/ -I .. -I . -I ../Include/X64/  -O2 -Wno-unused-result VfrLexer.cpp -o VfrLexer.o
g++ -c -DPCCTS_USE_NAMESPACE_STD -I Pccts/h -I .. -I ../Include/Common -I ../Include/ -I ../Include/IndustryStandard -I ../Common/ -I .. -I . -I ../Include/X64/  -O2  VfrSyntax.cpp -o VfrSyntax.o
g++ -c -I Pccts/h -I .. -I ../Include/Common -I ../Include/ -I ../Include/IndustryStandard -I ../Common/ -I .. -I . -I ../Include/X64/  -O2 -Wno-unused-result VfrFormPkg.cpp -o VfrFormPkg.o
g++ -c -I Pccts/h -I .. -I ../Include/Common -I ../Include/ -I ../Include/IndustryStandard -I ../Common/ -I .. -I . -I ../Include/X64/  -O2 -Wno-unused-result VfrError.cpp -o VfrError.o
g++ -c -I Pccts/h -I .. -I ../Include/Common -I ../Include/ -I ../Include/IndustryStandard -I ../Common/ -I .. -I . -I ../Include/X64/  -O2 -Wno-unused-result VfrUtilityLib.cpp -o VfrUtilityLib.o
g++ -c -I Pccts/h -I .. -I ../Include/Common -I ../Include/ -I ../Include/IndustryStandard -I ../Common/ -I .. -I . -I ../Include/X64/  -O2 -Wno-unused-result VfrCompiler.cpp -o VfrCompiler.o
g++ -o ../bin/VfrCompile  AParser.o DLexerBase.o ATokenBuffer.o EfiVfrParser.o VfrLexer.o VfrSyntax.o VfrFormPkg.o VfrError.o VfrUtilityLib.o VfrCompiler.o -L../libs -lCommon
/usr/bin/ld: AParser.o: relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: DLexerBase.o: relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ATokenBuffer.o: relocation R_X86_64_32S against symbol `_ZTV16ANTLRTokenBuffer' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: final link failed: nonrepresentable section on output
collect2: error: ld returned 1 exit status
make[2]: *** [GNUmakefile:42: ../bin/VfrCompile] Error 1
make[2]: Leaving directory '/srv/installers/AUR/uefi-shell-git/src/edk2/BaseTools/Source/C/VfrCompile'
make[1]: *** [GNUmakefile:85: VfrCompile] Error 2
make[1]: Leaving directory '/srv/installers/AUR/uefi-shell-git/src/edk2/BaseTools/Source/C'
make: *** [GNUmakefile:25: Source/C] Error 2
make: Leaving directory '/srv/installers/AUR/uefi-shell-git/src/edk2/BaseTools'
==> ERROR: A failure occurred in build().
    Aborting...
$ g++ -v
Using built-in specs.
COLLECT_GCC=/usr/bin//g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared --enable-threads=posix --enable-libmpx --with-system-zlib --with-isl --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --disable-libstdcxx-pch --disable-libssp --enable-gnu-unique-object --enable-linker-build-id --enable-lto --enable-plugin --enable-install-libiberty --with-linker-hash-style=gnu --enable-gnu-indirect-function --enable-multilib --disable-werror --enable-checking=release --enable-default-pie --enable-default-ssp --enable-cet=auto
Thread model: posix
gcc version 8.2.0 (GCC)

Hello71 commented on 2018-08-05 22:34

Although, installing it directly to /boot is not a good idea, because it may not be on the ESP. I would prefer an installer program, like bootctl or memtest86-efi.

Hello71 commented on 2018-08-05 22:33

I didn't write it, I only adopted it and made minor changes to make it compilable. If I was revamping it I'd get rid of all the unnecessary functions and probably get rid of i686 support. Patches accepted.

skunk commented on 2018-08-05 19:45

Or, Hello71, phrased as question: Why do you install the efi file to /usr and not to /boot directly (admittedly, one would need to check, whether to install it to /boot, /efi or /boot/efi, but this seems to be do-able)?

skunk commented on 2018-08-05 19:40

Hi @Hello71, what do you think about adding a pointer on what to do with the compiled .efi binary? For example, in the post_install message, one could add something like

To use the shell in EFI, either (a) copy it to <EFI_SYSTEM_PARTITION>/shellx64.efi, usually /boot/EFI/shellx64.efi, or (b) to some other location in the EFI system partition and make sure, that your EFI boot loader understands, where to find it and how to use it -- for more info, see https://wiki.archlinux.org/index.php/Category:Boot_loaders (for the default systemd-boot see https://wiki.archlinux.org/index.php/Systemd-boot)

A bit lengthy, but could help people, who do not know too much about UEFI, what to do with it...

Cheers

cg505 commented on 2018-06-23 14:18

Heads up: the listed upstream URL doesn't exist any more. Seems like it should be updated to GitHub? No issues with the actual package though, thanks!

mike.cloaked commented on 2017-09-09 13:20

With the latest gcc package now pushed to [core] (gcc (7.1.1-4 -> 7.2.0-2) ) and along with the related packages completed with today's pacman update, this package now builds without the need to make any alterations to the PKGBUILD file.