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

Unable to build/run tests with cmake on RHEL 7/8 #50803

Closed
omajid opened this issue Apr 6, 2021 · 8 comments · Fixed by #50805
Closed

Unable to build/run tests with cmake on RHEL 7/8 #50803

omajid opened this issue Apr 6, 2021 · 8 comments · Fixed by #50805

Comments

@omajid
Copy link
Member

omajid commented Apr 6, 2021

I have been using this command to test that runtime's main branch can build and run tests on RHEL 7 and CMake 3.6.2:

./build.sh --subset clr+libs+libs.tests --test --runtimeconfiguration Release --librariesConfiguration Debug /p:WithoutCategories=IgnoreForCI /p:NoPgoOptimize=true

Some time between April 4 (commit 21490fc) and April 6 (commit bc8be66), this command regressed. Now it fails to build:

  -- Performing Test HAVE_FUNCTIONAL_PTHREAD_ROBUST_MUTEXES
  -- Performing Test HAVE_FUNCTIONAL_PTHREAD_ROBUST_MUTEXES - Success
  -- Found PythonInterp: /usr/bin/python (found version "2.7.5") 
  CMake Error at pal/tests/CMakeLists.txt:1 (cmake_minimum_required):
    CMake 3.14.5 or higher is required.  You are running version 3.6.2
  
  
  -- Configuring incomplete, errors occurred!
  See also "/home/tester/runtime/artifacts/obj/coreclr/Linux.x64.Release/CMakeFiles/CMakeOutput.log".
  See also "/home/tester/runtime/artifacts/obj/coreclr/Linux.x64.Release/CMakeFiles/CMakeError.log".
  ~/runtime/src/coreclr
  ~/runtime/artifacts/obj/coreclr/Linux.x64.Release ~/runtime/src/coreclr
  Executing make install -j 4
  make: *** No rule to make target `install'.  Stop.
  ~/runtime/src/coreclr
  Failed to build "CoreCLR component".

Is the change that broke this an accident or is this an intentional? Is building/running tests on cmake 3.6.2 a supported configuration?

cc @dleeapho @tmds

@dotnet-issue-labeler dotnet-issue-labeler bot added area-Infrastructure-coreclr untriaged New issue has not been triaged by the area owner labels Apr 6, 2021
@ghost
Copy link

ghost commented Apr 6, 2021

Tagging subscribers to this area: @hoyosjs
See info in area-owners.md if you want to be subscribed.

Issue Details

I have been using this command to test that runtime's main branch can build and run tests on RHEL 7 and CMake 3.6.2:

./build.sh --subset clr+libs+libs.tests --test --runtimeconfiguration Release --librariesConfiguration Debug /p:WithoutCategories=IgnoreForCI /p:NoPgoOptimize=true

Some time between April 4 (commit 21490fc) and April 6 (commit bc8be66), this command regressed. Now it fails to build:

  -- Performing Test HAVE_FUNCTIONAL_PTHREAD_ROBUST_MUTEXES
  -- Performing Test HAVE_FUNCTIONAL_PTHREAD_ROBUST_MUTEXES - Success
  -- Found PythonInterp: /usr/bin/python (found version "2.7.5") 
  CMake Error at pal/tests/CMakeLists.txt:1 (cmake_minimum_required):
    CMake 3.14.5 or higher is required.  You are running version 3.6.2
  
  
  -- Configuring incomplete, errors occurred!
  See also "/home/tester/runtime/artifacts/obj/coreclr/Linux.x64.Release/CMakeFiles/CMakeOutput.log".
  See also "/home/tester/runtime/artifacts/obj/coreclr/Linux.x64.Release/CMakeFiles/CMakeError.log".
  ~/runtime/src/coreclr
  ~/runtime/artifacts/obj/coreclr/Linux.x64.Release ~/runtime/src/coreclr
  Executing make install -j 4
  make: *** No rule to make target `install'.  Stop.
  ~/runtime/src/coreclr
  Failed to build "CoreCLR component".

Is the change that broke this an accident or is this an intentional? Is building/running tests on cmake 3.6.2 a supported configuration?

cc @dleeapho @tmds

Author: omajid
Assignees: -
Labels:

area-Infrastructure-coreclr, untriaged

Milestone: -

@omajid
Copy link
Member Author

omajid commented Apr 6, 2021

I am also hitting this on RHEL 8:

  -- Performing Test HAVE_FULLY_FEATURED_PTHREAD_MUTEXES
  -- Performing Test HAVE_FULLY_FEATURED_PTHREAD_MUTEXES - Success
  -- Performing Test HAVE_FUNCTIONAL_PTHREAD_ROBUST_MUTEXES
  -- Performing Test HAVE_FUNCTIONAL_PTHREAD_ROBUST_MUTEXES - Success
  -- Found PythonInterp: /usr/bin/python3.6 (found version "3.6.8") 
  CMake Error at pal/tests/CMakeLists.txt:1 (cmake_minimum_required):
    CMake 3.14.5 or higher is required.  You are running version 3.11.4
  
  
  -- Configuring incomplete, errors occurred!
  See also "/home/tester/runtime/artifacts/obj/coreclr/Linux.x64.Release/CMakeFiles/CMakeOutput.log".
  See also "/home/tester/runtime/artifacts/obj/coreclr/Linux.x64.Release/CMakeFiles/CMakeError.log".
  ~/runtime/src/coreclr
  ~/runtime/artifacts/obj/coreclr/Linux.x64.Release ~/runtime/src/coreclr
  Executing make install -j 4
  make: *** No rule to make target 'install'.  Stop.
  ~/runtime/src/coreclr
  Failed to build "CoreCLR component".

@jkoritzinsky
Copy link
Member

Building on CMake 3.6.2 should be supported. It looks like the reorganization of the CoreCLR build enabled the pal tests build for you, but we never fixed that to work on 3.6.2. I'll look at fixing this.

@omajid omajid changed the title Unable to build/run tests with older cmake on RHEL 7 Unable to build/run tests with older cmake on RHEL 7/8 Apr 6, 2021
@omajid omajid changed the title Unable to build/run tests with older cmake on RHEL 7/8 Unable to build/run tests with cmake on RHEL 7/8 Apr 6, 2021
@ghost ghost added the in-pr There is an active PR which will close this issue when it is merged label Apr 6, 2021
@jkoritzinsky
Copy link
Member

Can you validate that #50805 fixes your scenario?

@ViktorHofer
Copy link
Member

@jkoritzinsky why does the clr subset build tests by default?

@jkoritzinsky
Copy link
Member

The pal tests are included in the clr.native subset, which I added as a default subset for clr. I didn't intend to build the pal tests by default (the usual coreclr workflows won't build them), but since they're a small build I don't have super strong feelings about going back and turning it off or keeping it on.

@ViktorHofer
Copy link
Member

Do they have any build dependencies like xunit?

@jkoritzinsky
Copy link
Member

Nope. They're pure C native executables.

@ghost ghost removed the in-pr There is an active PR which will close this issue when it is merged label Apr 7, 2021
@ViktorHofer ViktorHofer added bug and removed untriaged New issue has not been triaged by the area owner labels Apr 7, 2021
@ViktorHofer ViktorHofer added this to the 6.0.0 milestone Apr 7, 2021
@ghost ghost locked as resolved and limited conversation to collaborators May 7, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants