Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Travis osx, OpenMP using llvm clang 12.0.1 gives linking errors #910

Closed
robbietuk opened this issue Jul 20, 2021 · 6 comments
Closed

Travis osx, OpenMP using llvm clang 12.0.1 gives linking errors #910

robbietuk opened this issue Jul 20, 2021 · 6 comments

Comments

@robbietuk
Copy link
Collaborator

In two different PR's #901 and #902, the osx, OpenMP, using llvm clang builds are failing, see https://app.travis-ci.com/github/UCL/STIR/jobs/525748509. But it is only this build configuration, all others pass.

@robbietuk
Copy link
Collaborator Author

robbietuk commented Jul 20, 2021

This is a seperate travis macOS issue to that discussed in #897

@KrisThielemans
Copy link
Collaborator

error is https://app.travis-ci.com/github/UCL/STIR/jobs/532976171#L8622

Undefined symbols for architecture x86_64:
  "stir::BinNormalisation::set_up(std::__1::shared_ptr<stir::ExamInfo const> const&, std::__1::shared_ptr<stir::ProjDataInfo const> const&)", referenced from:
      vtable for stir::TrivialBinNormalisation in liblistmode_buildblock.a(LmToProjData.cxx.o)
  "stir::BinNormalisation::BinNormalisation()", referenced from:
      stir::LmToProjData::set_defaults() in liblistmode_buildblock.a(LmToProjData.cxx.o)
  "stir::BinNormalisation::~BinNormalisation()", referenced from:
      stir::LmToProjData::set_defaults() in liblistmode_buildblock.a(LmToProjData.cxx.o)
      stir::TrivialBinNormalisation::~TrivialBinNormalisation() in liblistmode_buildblock.a(LmToProjData.cxx.o)
      stir::TrivialBinNormalisation::~TrivialBinNormalisation() in liblistmode_buildblock.a(LmToProjData.cxx.o)
  "stir::TrivialBinNormalisation::registered_name", referenced from:
      stir::RegisteredParsingObject<stir::TrivialBinNormalisation, stir::BinNormalisation, stir::BinNormalisation>::get_registered_name() const in liblistmode_buildblock.a(LmToProjData.cxx.o)
  "stir::BinNormalisation::check(stir::ProjDataInfo const&) const", referenced from:
      vtable for stir::TrivialBinNormalisation in liblistmode_buildblock.a(LmToProjData.cxx.o)
  "stir::BinNormalisation::check(stir::ExamInfo const&) const", referenced from:
      vtable for stir::TrivialBinNormalisation in liblistmode_buildblock.a(LmToProjData.cxx.o)
  "typeinfo for stir::BinNormalisation", referenced from:
      typeinfo for stir::RegisteredParsingObject<stir::TrivialBinNormalisation, stir::BinNormalisation, stir::BinNormalisation> 

KrisThielemans added a commit to KrisThielemans/STIR-1 that referenced this issue Aug 21, 2021
We get linking errors on MacOSX with LLVM clang related to
TrivialBinNormalisation's vtable. This is probably because it has
only inline functions, so now we have a non-inline one.

Fixes UCL#910
@KrisThielemans
Copy link
Collaborator

Last succesful build was in #902 and used LLVM Clang 12.0.0. All subsequent builds failed for this job, and used LLVM Clang 12.0.1

@KrisThielemans KrisThielemans changed the title Travis osx, OpenMP using llvm clang builds are failing Travis osx, OpenMP using llvm clang 12.0.1 gives linking errors Aug 21, 2021
@KrisThielemans
Copy link
Collaborator

disabled this job in 8a2e4ea as it makes all PR CI fail

@KrisThielemans
Copy link
Collaborator

presumably outdated

@KrisThielemans
Copy link
Collaborator

indeed outdated with clang 16, tested in #1198 (the relevant job failed because of a run-time problem #1200, no linking error)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants