From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ua1-f45.google.com (mail-ua1-f45.google.com [209.85.222.45]) by mx.groups.io with SMTP id smtpd.web11.8980.1653495793219747473 for ; Wed, 25 May 2022 09:23:13 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20210112 header.b=W+S/G2rf; spf=pass (domain: gmail.com, ip: 209.85.222.45, mailfrom: xzavierpower@gmail.com) Received: by mail-ua1-f45.google.com with SMTP id k13so4944389uad.0 for ; Wed, 25 May 2022 09:23:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=iseykBddZubbBPSKYp4jMqnbZrTNBz+urI5r/xzRwDw=; b=W+S/G2rfMdaWRjjGCXQYzW2GxPO8jJw9TrjiKNnkHUNW/cZEw8S+iioeIFUdQshM/t lnU1tXgNjccF3XvfAa4pBBTW1smaPdAFxV1Ra+hnfoVK+S0Eacr3w1NHF7Djs+yM09ba wuH9GviPQ0ahXoguy16XjzgeEJmBPbOlcgod1C591le4nJoSBajqyV0lpo7lZRNwOcP2 k0p9rzi1SFzziMeC/RgEOyad/IhojfXVGFgy0v3ThMaD0p+fd/TSqNo6kN8XwjDP7s5r nQw1c11uteffWAeK4wrfDkk1XZlg/kyIEW63fgNhOzZEozvZLPoouMUKx2G2IAOR5Uri 6gug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=iseykBddZubbBPSKYp4jMqnbZrTNBz+urI5r/xzRwDw=; b=zcWOq+rACEk/nmtbSUGI5j4AHqVzFImusGHnTw/MUnMV3Xl4oZ+SMdI6Rj8Fxr+KEb 1HlwCixYXjwxQYnbG6VqmWepTta082jm+D7hB9CDcM12PW6ImpOjmyAt6CXhO4VOwhxQ h8ybMOWhaUVOhgLqmIHSdfeEww9LeMNJppIuwG0mZQRSDMuPPizyWN+NMh06adnWHu2D CIIWFlTgjEFMCz/+/44h+2eihVOiMxqWl5fIlJNeATv6/Gmi033oh13MaHaghzx29Xzg 32SWzApgNDZ5Fq6onhmNyKPUpciCpcpXMMjSI3KXeuRKUH/9bakY7mU4rCnqukH7J1J+ qkJQ== X-Gm-Message-State: AOAM531b5CTBrL/8vnvEn4SX7PgoCeXioYFkQxs/Hk5b7+6HbEd8vPGr BPoQzo/rwm2r44VAwxzcn1kNNNJNl24KuDInUBInVUAKaHTUXQ== X-Google-Smtp-Source: ABdhPJxsi+gcjZ//3FG3TYB3B1CQcPgecsJNp0VjIrAm7FgyJMIXRH6v1BbQdLOsAtlQ7OqlwyIsWb5lLJHDijMOzfE= X-Received: by 2002:ab0:2643:0:b0:369:2534:815 with SMTP id q3-20020ab02643000000b0036925340815mr1270372uao.24.1653495792079; Wed, 25 May 2022 09:23:12 -0700 (PDT) MIME-Version: 1.0 From: "M.T." Date: Wed, 25 May 2022 12:23:02 -0400 Message-ID: Subject: including redfish libs results in multiple definitions of symbols To: devel@edk2.groups.io Content-Type: multipart/alternative; boundary="0000000000005317ab05dfd87d5e" --0000000000005317ab05dfd87d5e Content-Type: text/plain; charset="UTF-8" Hello I'm working on a small UEFI shell app. I was hoping to make use of the JsonLib found in the Redfish Package. When I include the Redfish JsonLib and it's dependencies: JsonLib|RedfishPkg/Library/JsonLib/JsonLib.inf Ucs2Utf8Lib|RedfishPkg/Library/BaseUcs2Utf8Lib/BaseUcs2Utf8Lib.inf RedfishCrtLib|RedfishPkg/PrivateLibrary/RedfishCrtLib/RedfishCrtLib.inf BaseSortLib|MdeModulePkg/Library/BaseSortLib/BaseSortLib.inf BaseSortLib has symbol clashes with SortLib resulting in the following: /usr/bin/ld: UefiSortLib.obj (symbol from plugin): in function `PerformQuickSort': (.text+0x0): multiple definition of `PerformQuickSort'; BaseSortLib.obj (symbol from plugin):(.text+0x0): first defined here /usr/bin/ld: UefiSortLib.obj (symbol from plugin): in function `PerformQuickSort': (.text+0x0): multiple definition of `DevicePathCompare'; BaseSortLib.obj (symbol from plugin):(.text+0x0): first defined here /usr/bin/ld: UefiSortLib.obj (symbol from plugin): in function `PerformQuickSort': (.text+0x0): multiple definition of `StringNoCaseCompare'; BaseSortLib.obj (symbol from plugin):(.text+0x0): first defined here /usr/bin/ld: UefiSortLib.obj (symbol from plugin): in function `PerformQuickSort': (.text+0x0): multiple definition of `StringCompare'; BaseSortLib.obj (symbol from plugin):(.text+0x0): first defined here I need SortLib for UEFIShell dependencies, and I need BaseSortLib for JsonLib. Is there some way around this? Or is Redfish meant to be standalone? Thank you in advance xp --0000000000005317ab05dfd87d5e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello

I'm working on a small UEFI s= hell app.
I was hoping to make use of the JsonLib found in the Re= dfish Package.

When=C2=A0I include the Redfish Jso= nLib and it's dependencies:
JsonLib|RedfishPkg/Library/JsonLi= b/JsonLib.inf
Ucs2Utf8Lib|RedfishPkg/Library/BaseUcs2Utf8Lib/BaseUcs2Utf= 8Lib.inf
RedfishCrtLib|RedfishPkg/PrivateLibrary/RedfishCrtLib/RedfishCr= tLib.inf
BaseSortLib|MdeModulePkg/Library/BaseSortLib/BaseSortLib.inf

BaseSortLib has symbol clashes with SortLib resu= lting in the following:

/usr/bin/ld: UefiSortLib.o= bj (symbol from plugin): in function `PerformQuickSort':
(.text+0x0)= : multiple definition of `PerformQuickSort'; BaseSortLib.obj (symbol fr= om plugin):(.text+0x0): first defined here
/usr/bin/ld: UefiSortLib.obj = (symbol from plugin): in function `PerformQuickSort':
(.text+0x0): m= ultiple definition of `DevicePathCompare'; BaseSortLib.obj (symbol from= plugin):(.text+0x0): first defined here
/usr/bin/ld: UefiSortLib.obj (s= ymbol from plugin): in function `PerformQuickSort':
(.text+0x0): mul= tiple definition of `StringNoCaseCompare'; BaseSortLib.obj (symbol from= plugin):(.text+0x0): first defined here
/usr/bin/ld: UefiSortLib.obj (s= ymbol from plugin): in function `PerformQuickSort':
(.text+0x0): mul= tiple definition of `StringCompare'; BaseSortLib.obj (symbol from plugi= n):(.text+0x0): first defined here

I need Sort= Lib for UEFIShell dependencies, and I need BaseSortLib for JsonLib.
Is there some way around this?=C2=A0 Or is Redfish meant to be standalon= e?

Thank you in advance
xp
--0000000000005317ab05dfd87d5e--