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

Update installation notes or package required extra libraries needed (OpenMP) #10284

Open
3 tasks
jmarrec opened this issue Oct 29, 2023 · 1 comment
Open
3 tasks
Labels
Developer Issue Related to cmake, packaging, installers, or developer tooling (CI, etc)

Comments

@jmarrec
Copy link
Contributor

jmarrec commented Oct 29, 2023

Issue overview

On a clean Ubuntu machine (such as a vanilla ubuntu:2004 docker image), apt install libgomp1 libx11-6 is needed.
On mac, brew install libomp is needed (github actions has it installed, my M1 mac too to match).

It's confusing for some users to have even energyplus --help not working when they have a clean machine.

On Windows we ship open MP’s DLL as needed already:

# Add compiler-provided system runtime libraries
if(WIN32 AND NOT UNIX)
# Skip the call to install(PROGRAMS) so we can specify our own install rule (using the value of `CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS`)
set(CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP TRUE)
# Set to TRUE to install the Windows Universal CRT libraries for app-local deployment (e.g. to Windows XP, but apparently needed for Windows 8 too).
# This is meaningful only with MSVC from Visual Studio 2015 or higher, which is our case
set(CMAKE_INSTALL_UCRT_LIBRARIES TRUE)
# ConvertInputFormat is added via add_subdirectory, and in there we set CMAKE_INSTALL_OPENMP_LIBRARIES at parent scope already
# Otherwise, if either cpgfunctionEP (yes by default) or kiva (no by default) **actually** linked to OpenMP, we need to ship the libs
if (NOT ${CMAKE_INSTALL_OPENMP_LIBRARIES} AND (${USE_OpenMP} OR ${ENABLE_OPENMP}))
# Need to install vcomp140.dll or similar
find_package(OpenMP COMPONENTS CXX)
if(OpenMP_CXX_FOUND)
set(CMAKE_INSTALL_OPENMP_LIBRARIES TRUE)
endif()
endif()
include(InstallRequiredSystemLibraries)
if(CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS)
install(PROGRAMS ${CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS} DESTINATION "./" COMPONENT Libraries)
endif()
endif()

We should either package these libs (or find a way to link them statically), or update the installation notes.

Details

Some additional details for this issue (if relevant):

Checklist

Add to this list or remove from it as applicable. This is a simple templated set of guidelines.

  • Defect file added (list location of defect file here)
  • Ticket added to Pivotal for defect (development team task)
  • Pull request created (the pull request will have additional tasks related to reviewing changes that fix this defect)
@jmarrec jmarrec added the Developer Issue Related to cmake, packaging, installers, or developer tooling (CI, etc) label Oct 29, 2023
@jmarrec jmarrec changed the title Update installation notes or package required extra libraries needed Update installation notes or package required extra libraries needed (OpenMP) Nov 6, 2023
@apriliayolanda
Copy link

hi, i use macbook m2 2022, what kind of file of Radiance OpenStudio* OpenStudio App URBANopt CLI, should i install?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Developer Issue Related to cmake, packaging, installers, or developer tooling (CI, etc)
Projects
None yet
Development

No branches or pull requests

2 participants