cmake-basis / BASIS

CMake BASIS makes it easy to create sharable software and libraries that work together. This is accomplished by combining and documenting some of the best practices and utilities available. This project supplies a fully integrated suite of functionality to make the whole process seamless!
https://cmake-basis.github.io
Other
48 stars 10 forks source link

Error Bootstrapping #625

Closed srini2174 closed 4 years ago

srini2174 commented 7 years ago

I am trying to use BASIS bootstrapping script.

1) I created a top-level directory structure manually (Not using the basisproject script) including all the files like BasisProject.cmake etc.,
2) In the config directory I copied the BasisBootstrapping.cmake 3)I created a subproject under the modules directory 4)Now I created a build directory in the top-level project and ran cmake.

When I do this the BASIS package is downloaded and built successfully. But the find_package in the the top-level project is unable to find the BASIS package. I get the following error.

CMake Error at CMakeLists.txt:60 (find_package): By not providing "FindBASIS.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "BASIS", but CMake did not find one.

Could not find a package configuration file provided by "BASIS" with any of the following names:

BASISConfig.cmake
basis-config.cmake

Add the installation prefix of "BASIS" to CMAKE_PREFIX_PATH or set "BASIS_DIR" to a directory containing one of the above files. If "BASIS" provides a separate development package or SDK, be sure it has been installed.

I am attaching the workspace I used for this test. wxModular.zip

Thanks in advance for any help.

schuhschuh commented 7 years ago

You shouldn't have to set DEPENDS_BASIS_DIR in your top-level CMakeLists.txt. And setting it to the config subdirectory is most likely incorrect. This variable should point to where the bootstrapped BASIS installation is to be found. That location is set already by the basis_bootstrap function (see here). The BASIS_DIR variable should be picked up by find_package(BASIS QUIET). For this to work, you might also need the FindBASIS.cmake module. Available here. Copy it to your config directory.

Also, when you use the REQUIRED flag for find_package(BASIS) (instead of QUIET), you can remove the following error message if BASIS_FOUND is FALSE because find_package will generate a generic error, like the one you posted.

srini2174 commented 7 years ago

I tried to rerun after making all the changes suggested by you. I still get the following error.

Running "/Applications/CMake.app/Contents/bin/cmake -E server --pipe=/tmp/cmake-b6Tw46/socket --experimental" in /Users/xxxx/Downloads/wxModular/build. Starting to parse CMake project for Qt Creator. wxModular 2.zip

Extracting CMake BASIS... Extracting CMake BASIS... - done CMake BASIS_DIR /Users/xxxx/Downloads/wxModular/build/BASIS-3.3.0/build

CMake Error at CMakeLists.txt:62 (message): CMake BASIS setup failed. Please take the following steps:

1.  Clear the CMake cache and try from scratch

2.  Check the CMake BASIS website:

    https://cmake-basis.github.io/

3.  Search for an existing issue:

    https://github.com/cmake-basis/BASIS/issues/

4.  If this did not resolve the issue, please report your problem:

    https://github.com/cmake-basis/BASIS/issues/new

5.  Try a manual build of CMake BASIS following the instructions at:

    https://cmake-basis.github.io/quickstart.html

Configuring incomplete, errors occurred! See also "/Users/xxxx/Downloads/wxModular/build/CMakeFiles/CMakeOutput.log". CMake Project parsing failed.

I have uploaded the modified workspace. Thanks in advance for any help

srini2174 commented 7 years ago

Any help please. I am planning to use BASIS with codelite IDE using the following steps

1)Workspace is created as a top level BASIS project 2)BASIS is downloaded and installed once per workspace 3)All the projects are created as BASIS modules/BASIS subprojects in the workspace

This functionality of BASISBootstrapping is important for step 2.

Thanks in advance for any help

schuhschuh commented 7 years ago

Works just fine for me with the last archive you uploaded. Have you cleared your CMake Cache before retrying after the changes?

srini2174 commented 7 years ago

I removed all the cache and retried it. Still I have the same problem.

srini2174 commented 7 years ago

How do I enable the debugging messages. I am using CMake 3.9.2 & MacOSX 10.12.6 (if it helps).

srini2174 commented 7 years ago

Any help please.

schuhschuh commented 4 years ago

Closing this issue for now, hoping you managed to resolve it in the meantime.