-
Notifications
You must be signed in to change notification settings - Fork 18
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
CMake version and Boost version (e.g.upgrading to boost 1.66 or later will need CMake 3.11) #103
Comments
Richard came to help last week but I am still having trouble. I realise now there was an error in an environment variable (the 'R' was missing in 'MATLAB_R2017' so I have decided to rebuild from scratch. I noticed the messages below go past when the build started, though I was expecting it to use the boost 1.66 that should be on my system, and not start downloading 1.63 . Anyway, my question is more basic. I want to check the cmake configuration and I can run the cmake-gui. However, it is not obvious how to answer: 'Where is the source code' and 'Where to build the binaries'. I'm sure it is obvious to those of you who develop everyday, but to the novice there is a bewildering array of folders with 'build' in the name. 531:~/devel/build$ make -j2 |
Hi David,
The folder structure seems slightly different from how it was when I was helping you.
Try to start again (one last time!); if it doesn’t work I’ll come over when you’re free and help you out.
1. Check that in /Users/davidatkinson/devel there is no folder called SIRF-SuperBuild. If there is, delete it.
2. Open a terminal window and enter:
* mkdir /Users/davidatkinson/devel/SIRF-SuperBuild
* cd /Users/davidatkinson/devel/SIRF-SuperBuild
* git clone https://github.com/CCPPETMR/SIRF-SuperBuild.git Source
* cmake-gui
3. In cmake, make sure the Advanced checkbox is ticked, and then enter the following info:
* Where is the source code: /Users/davidatkinson/devel/SIRF-SuperBuild/Source
* Where to build the binaries: /Users/davidatkinson/devel/SIRF-SuperBuild/Build
* Tick the checkbox for USE_SYSTEM_Boost
* Enter all the other information required (MATLAB etc)
* Recursively click Configure and enter any new information until it’s happy.
* Click Generate
4. Close cmake
5. Go back to your terminal window:
* cd Build
* make -j2
With any luck, this time you shouldn’t download boost. Instead, you should build against boost version 1.66 (which we have seen is already on your computer).
If this doesn’t work, can you send me the file /Users/davidatkinson/devel/SIRF-SuperBuild/Build/CMakeCache.txt please.
To answer your question:
Your source code is what you download from github. The command 2.3 in the list above says “download the source code into /Users/davidatkinson/devel/SIRF-SuperBuild/Source”
For the binaries, this is something that you decide with cmake. In command 3.2 in the list above, we said “build the binaries in /Users/davidatkinson/devel/SIRF-SuperBuild/Build” (but we could have put them anywhere).
Also, let me know if, as before, you see:
…-- Downloading...
dst='/Users/davidatkinson/devel/build/downloads/Boost/boost_1_63_0.zip'
timeout='none'
-- Using src='http://downloads.sourceforge.net/project/boost/boost/1.63.0/boost_1_63_0.zip'
Hope this helps a bit, thanks for the persistence!
Richard
On 19 Mar 2018, at 10:19, David Atkinson <[email protected]<mailto:[email protected]>> wrote:
Richard came to help last week but I am still having trouble. I realise now there was an error in an environment variable (the 'R' was missing in 'MATLAB_R2017' so I have decided to rebuild from scratch.
I noticed the messages below go past when the build started, though I was expecting it to use the boost 1.66 that should be on my system, and not start downloading 1.63 .
Anyway, my question is more basic. I want to check the cmake configuration and I can run the cmake-gui. However, it is not obvious how to answer: 'Where is the source code' and 'Where to build the binaries'. I'm sure it is obvious to those of you who develop everyday, but to the novice there is a bewildering array of folders with 'build' in the name.
531:~/devel/build$ make -j2
Scanning dependencies of target FFTW3
Scanning dependencies of target Boost
[ 1%] Creating directories for 'FFTW3'
[ 2%] Creating directories for 'Boost'
[ 4%] Performing download step (download, verify and extract) for 'Boost'
[ 4%] Performing download step (download, verify and extract) for 'FFTW3'
-- Downloading...
dst='/Users/davidatkinson/devel/build/downloads/FFTW3/fftw-3.3.5.tar.gz'
timeout='none'
-- Using src='http://www.fftw.org/fftw-3.3.5.tar.gz'
-- Downloading...
dst='/Users/davidatkinson/devel/build/downloads/Boost/boost_1_63_0.zip'
timeout='none'
-- Using src='http://downloads.sourceforge.net/project/boost/boost/1.63.0/boost_1_63_0.zip'
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub<#103 (comment)>, or mute the thread<https://github.com/notifications/unsubscribe-auth/AfvzQZ3uAUIu1XwQICBVDTgEQ-IeYHJ0ks5tf4YhgaJpZM4SvHNy>.
|
Thanks Richard
The situation of “where is the source” is a bit more complicated with the superbuild of course. The “superbuild source” is where you say it is, but then SIRF source will end up in the build directory… (depending on cmake variables)
|
In fact, for a particular CMake version, it "knows" only about compilers and libraries in existence at the time that CMake version was released. Therefore, CMake's Example: CMake 3.7 only knows about to Boost 1.63.0;1.63;1 You can tell Conclusion: we need to recommend to use the latest CMake, and update our own CMake versions (of course, skipping the ones that we know have problems!). |
A dependency of the dependency manager ...? |
:-) |
Port stir-VM changes to master
@paskino I think this can be closed now |
From the CMake mailing list
The text was updated successfully, but these errors were encountered: