Skip to content
This repository has been archived by the owner on Mar 21, 2024. It is now read-only.

configure stage hangs (in tests) #981

Closed
yurivict opened this issue May 5, 2019 · 10 comments
Closed

configure stage hangs (in tests) #981

yurivict opened this issue May 5, 2019 · 10 comments
Labels

Comments

@yurivict
Copy link

yurivict commented May 5, 2019

===>  Performing out-of-source build
/bin/mkdir -p /usr/ports/devel/thrust/work/.build
-- The CXX compiler identification is Clang 6.0.1
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Thrust version 1.9.4
MSVC_COMPILER_FLAGS:
 | WARN_ALL : '/Wall'
 | WARNINGS_AS_ERRORS : '/Wx'
 | RELEASE : '/Ox'
 | DEBUG : '/Zi;-D_DEBUG;/MTd'
 | EXCEPTION_HANDLING : '/EHsc'
 | CPP : ''
 | OMP : '/openmp'
 | TBB : ''
 | CUDA : ''
 | CUDA_BULK : ''
 | WORKAROUNDS : '/DNOMINMAX;/wd4503'
 | C++03 : ''
 | C++11 : '-std=c++11'
CUDA_TOOLKIT_ROOT_DIR not found or specified
-- Could NOT find CUDA (missing: CUDA_TOOLKIT_ROOT_DIR CUDA_NVCC_EXECUTABLE CUDA_INCLUDE_DIRS CUDA_CUDART_LIBRARY) 
-- Found OpenMP_CXX: -fopenmp=libomp  -I/usr/local/include -L/usr/local/lib (found version "3.1") 
-- Found OpenMP: TRUE (found version "3.1")  
-- Found 49 examples
-- Found 5 examples/cuda
-- Found 4 examples/cpp_integration
-- Found 152 tests in testing
-- Found 59 tests in backend
-- Found 35 performance tests
-- Found PythonInterp: /home/yuri/bin/python (found version "2.7.16") 
  • at this point it hangs.
@yurivict yurivict changed the title configure stage hangs configure stage hangs (in tests) May 5, 2019
@yurivict
Copy link
Author

yurivict commented May 5, 2019

When I added this patch

-add_subdirectory(examples)
-add_subdirectory(testing)
-add_subdirectory(performance)
+if (ENABLE_EXAMPLES)
+  add_subdirectory(examples)
+endif()
+if (ENABLE_TESTING)
+  add_subdirectory(testing)
+endif()
+if (ENABLE_PERFORMANCE)
+  add_subdirectory(performance)
+endif()

ENABLE_TESTING is what causes freezing.

Please make testing, examples, etc. optional.

@Char-Aznable
Copy link

Related to #976

@Char-Aznable
Copy link

@brycelelbach @griwes Would a PR like this be acceptable?

@griwes
Copy link
Collaborator

griwes commented May 13, 2019

The so far released versions contain a build system that is currently unsupported; the next Toolkit release should contain the new build system that is already available in master (and the maintenance branches here on Github).

The new Thrust build system exists specifically to build examples and tests, so disabling tests on it would counter its purpose. I realize that the old one supported CPack; if that is important for how you use Thrust, please file an issue that requests support for it to be added. But if it isn't, there's no reason to run the Thrust build system other than to build tests and examples.

@Char-Aznable
Copy link

see my other comment on #976. I think there are plenty of examples where CMakeLists.txt make sense for a header only library and cmake explicitly supports that.

@yurivict
Copy link
Author

I usually disable tests and examples during package build because the installed packages don't need them. They should be run separately on as-needed basis.

@griwes
Copy link
Collaborator

griwes commented May 14, 2019

Yes, that is reasonable; but since Thrust is a header-only library, there isn't anything that needs to be built during package build.

I'm a bit more sympathetic to this request than to the other issue being linked here, but since there's currently (and mind you, by "currently" I mean "on master", which is also what we hope will become the same as is shipped with the Toolkit, build-system-wise) nothing to build save for tests and examples there, I'm not sure there's much point doing that right now.

From the perspective of a package builder/maintainer: do you want/need/prefer an install target? master currently doesn't have one; but I think it's a reasonable request for us to provide one that'd just effectively cp -r thrust <install location>. And I guess we could plug other actions as dependencies of that in the future, if that is ever necessary.

@yurivict
Copy link
Author

From the perspective of a package builder/maintainer: do you want/need/prefer an install target?

Yes. 1.9.4 installs files under thrust/ which isn't how packages commonly install files.
You should push this thrust/ into include/thrust, and add a .cmake file for it to be found.

@yurivict
Copy link
Author

In 1.9.5 tests just print this in the infinite cycle:

   used as include directory in directory /usr/ports/devel/thrust/work/thrust-1.9.5/testing
   used as include directory in directory /usr/ports/devel/thrust/work/thrust-1.9.5/testing
   used as include directory in directory /usr/ports/devel/thrust/work/thrust-1.9.5/testing
   used as include directory in directory /usr/ports/devel/thrust/work/thrust-1.9.5/testing
   used as include directory in directory /usr/ports/devel/thrust/work/thrust-1.9.5/testing
   used as include directory in directory /usr/ports/devel/thrust/work/thrust-1.9.5/testing

@miscco
Copy link
Collaborator

miscco commented Feb 24, 2023

I believe this has been fixed since, so please reopen if the issue still persists

@miscco miscco closed this as completed Feb 24, 2023
@github-project-automation github-project-automation bot moved this to Done in CCCL Feb 24, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
Archived in project
Development

No branches or pull requests

5 participants