usually one uses llvm-config to get the libs and order is important too
especially with static libs. Can you dump all .a files from clang and see
if its defined in some other .a which is either missing or present
after the faulting .a in linker cmd

On Wed, May 5, 2021 at 12:53 PM Monsees, Steven C (US) <
[email protected]> wrote:

>
>
> I made some modification in the cmake modules to adjust for the linker
> issue below, but now I appear to have uncovered an issue with the static
> libraries which meta-clang generated under the SDK… (see below)…
>
>
>
> The link command is attached as “tmp.txt”.
>
>
>
> There are a lot of these being generated, this is but a subset…
>
> Note:
>
> (1) “workspace_3” is a reference to my build area where I built the STD
> SDK, why would this be here the SDK should be independent of this are, no ?
>
>                 (2) the code with the undefined reference does appear to
> be missing the proper header file reference
>
>
>
>
>
>
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/corei7-64-poky-linux/usr/lib/libclangCodeGen.a(CodeGenModule.cpp.o):
> in function `CodeGenModule':
>
> */disk0/scratch/smonsees/yocto/**workspace_3*
> */builds2/sbcb-default/tmp/work-shared/llvm-project-source-9.0.1-r0/git/clang/lib*/CodeGen/CodeGenModule.cpp:114:
> undefined reference to `clang::ASTContext::toCharUnitsFromBits(long) const'
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/work-shared/llvm-project-source-9.0.1-r0/git/clang/lib/CodeGen/CodeGenModule.cpp:116:
> undefined reference to `clang::ASTContext::toCharUnitsFromBits(long) const'
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/work-shared/llvm-project-source-9.0.1-r0/git/clang/lib/CodeGen/CodeGenModule.cpp:118:
> undefined reference to `clang::ASTContext::toCharUnitsFromBits(long) const'
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/corei7-64-poky-linux/usr/lib/libclangCodeGen.a(CodeGenModule.cpp.o):
> in function `bool clang::Decl::hasAttr<clang::IFuncAttr>() const':
>
> /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/work-shared/llvm-project-source-9.0.1-r0/git/clang/include/clang/AST/DeclBase.h:543:
> undefined reference to `clang::Decl::getAttrs() const'
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/corei7-64-poky-linux/usr/lib/libclangCodeGen.a(CodeGenModule.cpp.o):
> in function `clang::CodeGen::CodeGenModule::checkAliases()':
>
> /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/work-shared/llvm-project-source-9.0.1-r0/git/clang/lib/CodeGen/CodeGenModule.cpp:304:
> undefined reference to `clang::Decl::getDefiningAttr() const'
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/corei7-64-poky-linux/usr/lib/libclangCodeGen.a(CodeGenModule.cpp.o):
> in function `clang::SectionAttr* clang::Decl::getAttr<clang::SectionAttr>()
> const':
>
> /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/work-shared/llvm-project-source-9.0.1-r0/git/clang/include/clang/AST/DeclBase.h:539:
> undefined reference to `clang::Decl::getAttrs() const'
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/corei7-64-poky-linux/usr/lib/libclangCodeGen.a(CodeGenModule.cpp.o):
> in function `bool clang::Decl::hasAttr<clang::CUDAGlobalAttr>() const':
>
> /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/work-shared/llvm-project-source-9.0.1-r0/git/clang/include/clang/AST/DeclBase.h:543:
> undefined reference to `clang::Decl::getAttrs() const'
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/corei7-64-poky-linux/usr/lib/libclangCodeGen.a(CodeGenModule.cpp.o):
> in function `clang::CodeGen::CodeGenModule::Release()':
>
> /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/work-shared/llvm-project-source-9.0.1-r0/git/clang/lib/CodeGen/CodeGenModule.cpp:520:
> undefined reference to
> `clang::ASTContext::getTypeSizeInChars(clang::QualType) const'
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/corei7-64-poky-linux/usr/lib/libclangCodeGen.a(CodeGenModule.cpp.o):
> in function `clang::CodeGen::CodeGenModule::emitMultiVersionFunctions()':
>
> /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/work-shared/llvm-project-source-9.0.1-r0/git/clang/lib/CodeGen/CodeGenModule.cpp:2788:
> undefined reference to
> `clang::ASTContext::forEachMultiversionedFunctionVersion(clang::FunctionDecl
> const*, llvm::function_ref<void (clang::FunctionDecl*)>) const'
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/work-shared/llvm-project-source-9.0.1-r0/git/clang/lib/CodeGen/CodeGenModule.cpp:2819:
> undefined reference to `clang::FunctionDecl::isTargetMultiVersion() const'
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/corei7-64-poky-linux/usr/lib/libclangCodeGen.a(CodeGenModule.cpp.o):
> in function
> `clang::CodeGen::CodeGenModule::getFunctionLinkage(clang::GlobalDecl)':
>
> /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/work-shared/llvm-project-source-9.0.1-r0/git/clang/lib/CodeGen/CodeGenModule.cpp:1188:
> undefined reference to
> `clang::ASTContext::GetGVALinkageForFunction(clang::FunctionDecl const*)
> const'
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/work-shared/llvm-project-source-9.0.1-r0/git/clang/lib/CodeGen/CodeGenModule.cpp:1188:
> undefined reference to
> `clang::ASTContext::GetGVALinkageForFunction(clang::FunctionDecl const*)
> const'
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/work-shared/llvm-project-source-9.0.1-r0/git/clang/lib/CodeGen/CodeGenModule.cpp:1188:
> undefined reference to
> `clang::ASTContext::GetGVALinkageForFunction(clang::FunctionDecl const*)
> const'
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/corei7-64-poky-linux/usr/lib/libclangCodeGen.a(CodeGenModule.cpp.o):
> in function `clang::Module::getTopLevelModuleName() const':
>
> /disk0/scratch/smonsees/yocto/workspace_3/builds2/sbcb-default/tmp/work-shared/llvm-project-source-9.0.1-r0/git/clang/include/clang/Basic/Module.h:468:
> undefined reference to `clang::Module::getTopLevelModule() const'
>
>
>
>
>
> *From:* Monsees, Steven C (US) <[email protected]>
> *Sent:* Wednesday, May 5, 2021 7:25 AM
> *To:* Monsees, Steven C (US) <[email protected]>; Khem Raj <
> [email protected]>
> *Cc:* [email protected]
> *Subject:* RE: [yocto] #yocto cmake configurations
>
>
>
>
>
> All the libraries are under the SDK here:
>
>
>
>
> -L/disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/corei7-64-poky-linux/usr/lib
>
>
>
> I need the DRM libraries to be picked up correctly, libclang.so may not be
> required since I have all the static variations available, (added to while
> testing linker) I have yet to make it through entire build due to linker
> issue…
>
>
>
> Steve
>
>
>
> *From:* [email protected] <[email protected]> *On
> Behalf Of *Monsees, Steven C (US) via lists.yoctoproject.org
> *Sent:* Wednesday, May 5, 2021 6:44 AM
> *To:* Khem Raj <[email protected]>
> *Cc:* [email protected]
> *Subject:* Re: [yocto] #yocto cmake configurations
>
>
>
> *External Email Alert*
>
> *This email has been sent from an account outside of the BAE Systems
> network.*
>
> Please treat the email with caution, especially if you are requested to
> click on a link, decrypt/open an attachment, or enable macros.  For further
> information on how to spot phishing, access “Cybersecurity OneSpace Page”
> and report phishing by clicking the button “Report Phishing” on the Outlook
> toolbar.
>
>
>
>
>
> Khem:
>
>
>
> I only have the following libraries present for these:
>
>
>
> libclang.so
>
> libclang.so.9
>
> libdrm_intel.so
>
> libdrm_intel.so.1
>
> libdrm_intel.so.1.0.0
>
> libdrm.so
>
> libdrm.so.2
>
> libdrm.so.2.4.0
>
>
>
> I do generate the static (*.a) files for both LLVM & Clang and they appear
> to all be present (No libclang.a was generated).
>
>
>
> Steve
>
>
>
> *From:* Khem Raj <[email protected]>
> *Sent:* Tuesday, May 4, 2021 7:46 PM
> *To:* Monsees, Steven C (US) <[email protected]>
> *Cc:* [email protected]
> *Subject:* Re: [yocto] #yocto cmake configurations
>
>
>
> *External Email Alert*
>
> *This email has been sent from an account outside of the BAE Systems
> network.*
>
> Please treat the email with caution, especially if you are requested to
> click on a link, decrypt/open an attachment, or enable macros.  For further
> information on how to spot phishing, access “Cybersecurity OneSpace Page”
> and report phishing by clicking the button “Report Phishing” on the Outlook
> toolbar.
>
>
>
> the cmd seems to pass --sysroot correctly so can you search in SDK sysroot
> if you have libclang.a libdrm_intel.a and libdrm.a ?
>
>
>
> On Tue, May 4, 2021 at 3:20 PM Monsees, Steven C (US) via
> lists.yoctoproject.org <steven.monsees=
> [email protected]> wrote:
>
> Yes, LLVM & Clang…
>
>
>
> *From:* Khem Raj <[email protected]>
> *Sent:* Tuesday, May 4, 2021 5:17 PM
> *To:* Monsees, Steven C (US) <[email protected]>
> *Cc:* [email protected]
> *Subject:* Re: [yocto] #yocto cmake configurations
>
>
>
> *External Email Alert*
>
> *This email has been sent from an account outside of the BAE Systems
> network.*
>
> Please treat the email with caution, especially if you are requested to
> click on a link, decrypt/open an attachment, or enable macros.  For further
> information on how to spot phishing, access “Cybersecurity OneSpace Page”
> and report phishing by clicking the button “Report Phishing” on the Outlook
> toolbar.
>
>
>
> I see its using -rdynamic -static
>
> so next question is that do you have .a files in your sdk ?
>
>
>
> On Tue, May 4, 2021 at 12:57 PM Monsees, Steven C (US) via
> lists.yoctoproject.org <steven.monsees=
> [email protected]> wrote:
>
>
>
> Attached…
>
>
>
> *From:* Khem Raj <[email protected]>
> *Sent:* Tuesday, May 4, 2021 2:36 PM
> *To:* Monsees, Steven C (US) <[email protected]>
> *Cc:* [email protected]
> *Subject:* Re: [yocto] #yocto cmake configurations
>
>
>
> *External Email Alert*
>
> *This email has been sent from an account outside of the BAE Systems
> network.*
>
> Please treat the email with caution, especially if you are requested to
> click on a link, decrypt/open an attachment, or enable macros.  For further
> information on how to spot phishing, access “Cybersecurity OneSpace Page”
> and report phishing by clicking the button “Report Phishing” on the Outlook
> toolbar.
>
>
>
> can you post full linker cmd which is failing ?
>
>
>
> On Tue, May 4, 2021 at 11:24 AM Monsees, Steven C (US) via
> lists.yoctoproject.org <steven.monsees=
> [email protected]> wrote:
>
>
>
> My standard zeus SDK appears to have an issue linking in my applications
> dynamic libs…
>
>
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> cannot find -ldrm_intel
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> cannot find -ldrm
>
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/x86_64-pokysdk-linux/usr/libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/real-ld:
> cannot find -lclang
>
> collect2: error: ld returned 1 exit status
>
> The libraries are under:
> /disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/corei7-64-poky-linux/usr/lib/
>
>
>
> My CMake build app does not appear to have an issue finding the files:
>
>
>
>
> DRM_INTEL_LIBRARIES:STRING=/disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/corei7-64-poky-linux/usr/lib/libdrm_intel.so
>
>
> DRM_LIBRARIES:STRING=/disk0/scratch/smonsees/sbcbSTD_SDK/limws/3.0.4/sysroots/corei7-64-poky-linux/usr/lib/libdrm.so
>
>
>
> It appears to be an issue specifically with the ld…
>
>
>
> LDFLAGS= " --sysroot=$ENV{OECORE_TARGET_SYSROOT}
> -L$ENV{OECORE_TARGET_SYSROOT}/usr/lib
> -L$ENV{OECORE_TARGET_SYSROOT}/usr/lib/x86_64-poky-linux/9.2.0 -lpthread
> -pthread -O2 -pipe -Wl,-O1 -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed"
>
>
>
> It does not appear to be making use of –L’s…
>
>
>
> Is there something I might look at/configure (i.e. add paths to search
> paths) ?
>
> Is there a simple test to validate tool ?
>
>
>
> Thanks,
>
> Steve
>
>
>
> *From:* [email protected] <[email protected]> *On
> Behalf Of *Monsees, Steven C (US) via lists.yoctoproject.org
> *Sent:* Sunday, May 2, 2021 1:28 PM
> *To:* [email protected]
> *Subject:* [yocto] #yocto cmake configurations
>
>
>
> *External Email Alert*
>
> *This email has been sent from an account outside of the BAE Systems
> network.*
>
> Please treat the email with caution, especially if you are requested to
> click on a link, decrypt/open an attachment, or enable macros.  For further
> information on how to spot phishing, access “Cybersecurity OneSpace Page”
> and report phishing by clicking the button “Report Phishing” on the Outlook
> toolbar.
>
>
>
>
>
> I am using zeus, standard SDK, cmake…
>
>
>
> Can I pre-configure the SDK to setup cmake package search paths ?, say for
> find_package, etc. (i.e. detecting external libraries/programs)…
>
>
>
> The majority of my env is configuring properly, but I am finding cmake is
> setup for a standard linux env with regards to these types of searches, and
>
> I wanted the cmake built in to look at my SDK paths (first by default)
> when doing such things as detecting python interpreter, libraries, etc.
>
>
>
> I am working on third party package unaware of my SDK setup.
>
>
>
> Thanks,
>
> Steve
>
>
>
>
>
>
>
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#53400): https://lists.yoctoproject.org/g/yocto/message/53400
Mute This Topic: https://lists.yoctoproject.org/mt/82532711/21656
Mute #yocto:https://lists.yoctoproject.org/g/yocto/mutehashtag/yocto
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to