Hi Daryl, what I basically did to integrate it into the shell was to copy the original shell (not the whole ShellPkg, just the shell application) and the original UefiShellNetwork1CommandsLib, I modified the UefiShellNetwork1CommandsLib to include my program and the shell application (or better, my dsc-file) to include my modified UefiShellNetwork1CommandsLib instead of the original one. If I run my application "standalone", meaning running the application as an .efi-file from an USB stick, it works fine. When adding my application to the UefiShellNetwork1CommandsLib, I also added all StdLib libraries to its inf file.
I added my dsc and inf files as an attachment so you can take a look at it. Greetings Johannes -----Original Message----- From: Daryl McDaniel [mailto:[email protected]] Sent: Tuesday, November 24, 2015 4:55 PM To: Conen, Johannes; [email protected] Subject: RE: [edk2] Integrate application into Shell Johannes, In order for an application to use features from STDLIB, the application must be explicitly linked with the appropriate libraries. For applications that are built into the shell and are part of the same .efi file the rules that apply to standalone applications should work. The Shell and all built-in "applications" are actually a single application. Make sure that you are following the instructions in the ReadMe.txt file within either of the AppPkg or StdLib packages for which libraries to link with. If you are still having problems, send me your .dsc and .inf files for the modified Shell and I will see if there are any problems there. Sincerely, Daryl McDaniel -----Original Message----- From: edk2-devel [mailto:[email protected]] On Behalf Of Conen, Johannes Sent: Monday, November 23, 2015 12:46 AM To: [email protected] Subject: [edk2] Integrate application into Shell Hi everyone, I'd like to integrate a few applications into the shell so they are directly available when booting the shell vie PXE. One of the applications I wanted to include in the shell is made using EADK, specifically the socket library. I got it integrated and can run it from the shell, however all EADK related things don't seem to work - e.g. if I use printf(), nothing happens, the UEFI Print() however works. Is this a mistake on my side or does EADK generally not work when used from applications integrated into the shell? I saw the "known issue" in the readme.txt from AppPkg ("2. Applications must be launched from within the EFI Shell"), but thought running it from the shell or integrating it into the shell would make no technical difference. Greetings Johannes _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

