<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/78955>78955</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            Compile ldc with llvm-17.0.6 fail
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          Pro-pra
      </td>
    </tr>
</table>

<pre>
    I see this error:
```
/usr/bin/g++ -std=c++17 -DDMDV2 -O2 -fomit-frame-pointer -gdwarf-4 -Wstrict-aliasing=2 -pipe -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -fstack-protector-strong --param=ssp-buffer-size=4 -fno-strict-aliasing -Wl,-O2  -Wl,--no-undefined "CMakeFiles/ldc-profgen.dir/llvm-profgen.cpp.o" "CMakeFiles/ldc-profgen.dir/PerfReader.cpp.o" "CMakeFiles/ldc-profgen.dir/CSPreInliner.cpp.o" "CMakeFiles/ldc-profgen.dir/ProfiledBinary.cpp.o" "CMakeFiles/ldc-profgen.dir/ProfileGenerator.cpp.o" "CMakeFiles/ldc-profgen.dir/MissingFrameInferrer.cpp.o" -o ../../../bin/ldc-profgen  -lLLVM-17 -ldl -L/usr/lib64 
/usr/bin/aarch64-rosa-linux-gnu-ld: CMakeFiles/ldc-profgen.dir/CSPreInliner.cpp.o: in function `llvm::sampleprof::CSPreInliner::processFunction(llvm::StringRef)':
CSPreInliner.cpp:(.text+0xa84): undefined reference to `llvm::SampleContextTracker::getContextString[abi:cxx11](llvm::sampleprof::FunctionSamples const&) const'
/usr/bin/aarch64-rosa-linux-gnu-ld: CSPreInliner.cpp:(.text+0xd44): undefined reference to `llvm::SampleContextTracker::getContextString[abi:cxx11](llvm::sampleprof::FunctionSamples const&) const'
/usr/bin/aarch64-rosa-linux-gnu-ld: CMakeFiles/ldc-profgen.dir/CSPreInliner.cpp.o: in function `llvm::sampleprof::CSPreInliner::run()::{lambda(llvm::SampleContextTracker&, bool)#1}::operator()(llvm::SampleContextTracker&, bool) const':
CSPreInliner.cpp:(.text+0xed8): undefined reference to `llvm::SampleContextTracker::getContextString[abi:cxx11](llvm::ContextTrieNode*) const'
collect2: error: ld returned 1 exit status
```

I not see `llvm::SampleContextTracker::getContextString symbols in my libllvm-17.so
I build llvm with options:
```
/usr/bin/cmake .. -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_INSTALL_LIBDIR:PATH=lib64 -DINCLUDE_INSTALL_DIR:PATH=/usr/include -DLIB_INSTALL_DIR:PATH=lib64 -DSYSCONF_INSTALL_DIR:PATH=/etc -DSHARE_INSTALL_PREFIX:PATH=/usr/share -DLIB_SUFFIX=64 -DCMAKE_SKIP_RPATH:BOOL=ON -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DBUILD_SHARED_LIBS:BOOL=ON -DBUILD_STATIC_LIBS:BOOL=OFF '-DCMAKE_MODULE_LINKER_FLAGS=-O2 -fomit-frame-pointer -gdwarf-4 -Wstrict-aliasing=2 -pipe -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -fstack-protector-strong --param=ssp-buffer-size=4 -fno-strict-aliasing -Wl,-O2  -Wl,--no-undefined -Wl,--unresolved-symbols=ignore-all' -DINCLUDE_INSTALL_DIR:PATH=/usr/include/d -DCMAKE_CXX_FLAGS=-std=c++17
```

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzkV01v2zgQ_TX0haAhU_JHDj7IptUKVWLDTpr2ZFDSyOaGJgWSapP99QtK_kjSLNr0sAvsAoIgkvOGb4aPQ4pbK3YKYIqGMzRkPd64vTbTldGkNryX6_JpmmILgN1eWAzGaIPCGAUMBTEaBcena9KksQbRJBcK0WSH6AzRGSbWlShkRdccjDFh7Jp9ppgsKSaVPghHKsMPQGotlAODya78zk1FIkzurTOicIRLwa1QOxQyikktasDkvtLmwB0m90darOsgForGCPeECdsmy_VtmnzdbpZ36_mig1erdI5JZR0vHkhttIPCaUOsM1rtMCE1N_yAQmZtTfKmqsAQK_4EFLIIk0pp8ooUJvcS0bmP5_RJlCaNKqESCkqMKJ1f8wdIhASLaCLLws9b7UD1S-FTJuW3w7mrqOu-RpT-Am4FploDL8G8BzXfrAykSgr1PtzK6EpIKGdCcfP0G8gPoMBwp98167WwPsuJ10iqKjDmOWuicb-PaHJ5dfJ75gdjIrPs8zXx4pOlxCQ7a1WKfBThNwXMuSn2o4gYbTmRQjWPZKcaIksUxvj9GQ5jLBSuGlU4oRVGo8Avut9MYWz5oZbgXXTt5_Cupza6AGuTIxzRyQW9cUao3RoqRK8QHZ_352sSfoBO-g4eHaKz4JFPIo8IY3yRqoEKDKgCsNMvOW5ajnOtPP7W8OLhxG0H7tjdMUHDGc8FCuPi8XEwQEP2gu3rWE8hdf4tLrSyDtERolen7_FvrM9PYi-j_3Ds_7A2TeP12KXTP-OZ5Ie85C9F-lYKfaRznGstW-mGAzRmnbmuu0JxdPw-T5fc_epWgHLyL8jh7EHAjS4B0fjHhS-0lFA46rmdjl8sPTvXGE9zgOFROGwdd419-2Bu3ylW2rVH-W_Ggu3TIdfSeqkcnrAUeXtqDcZ9q09T5I2QJfb9-Ltwe6xrLyj7i1eG4sAfAPf7mLD5dfxpsU1vNrdxlm1X60WSfkFhvIpvP6KQdbgfzLJ0xtL1xawr7oSlN_Psjl3sXhidOQhVyKYETFiWzt62PTncfN3MlzfJ3zoEV3irj_H6ZzEgmtg9N6dZN3dJa8TaabroNp_S1XbdoeLZcpmhkC1vzsOfF-vZcrPY-kaSZotXRrO7NGPblgrzCdq8PX4b36bz1-NJghEdnya6XrK7bLHN0ptPi_U2yeIPGxSy_88t7tTZKANWy29QkuOOQCETO6UNEC4louP3Sg7RpDyv5_zLl0tyX92d39xEvXIallfhFe_BdDAOhlc0iIJJbz_NAzqiAx5OqiDg4STKIRwGwzC4Aj7i-WDQE1Ma0CgYUDoIolE06Ue05INxyMPRpIKqGKMogAMXsu93dF-bXU9Y28B0PLkaDnuS5yBt--tAqYLvuB1ElPo_CTNtq0Pe7CyKAimssxcvTjgJ07k-1EIClmXRVYtTPQn6I1xxIXuNkdO9c3VbQGji_yqE2zd5v9CH46352eX5DyicT6pn4Y--luVfAQAA___cTgs5">