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

Implementing Stephan's fix for finding VTK. #125

Merged
merged 1 commit into from
Nov 7, 2016

Conversation

jrper
Copy link
Contributor

@jrper jrper commented Jul 12, 2016

This pull request attempts to implement @stephankramer's cmake based fix for finding where the elves have hidden VTK on an arbitrary system, issue #113. So far it doesn't remove anything, the only time it might change behaviour is when cmake isn't available, but the location of VTK has been implicitly provided through environment flags.

@tmbgreaves
Copy link
Contributor

That looks great, thank you. I'll run it through buildbot and attempt to test on various different platforms.

@stephankramer
Copy link
Contributor

One query: is -DCOMPILER_ID=gcc appropriate when using intel?

@jrper
Copy link
Contributor Author

jrper commented Jul 13, 2016

Experimenting on the college cluster, this appears to give answers of the right form with -DCOMPILER_ID=gcc regardless of the compiler which was actually used to compile the vtk library itself. I think that in this case this only controlling the syntax of the output, and -I/vtk/include/stuff and a list of absolute library paths works for both gcc and intel (plus clang). Do we actually claim to support any other compiler?

@ghost
Copy link

ghost commented Jul 13, 2016

Dear all,

If I may chip in, last I checked, some work was required to get Fluidity
to compile with the Intel compilers*.

Regards
Angus

[*] This statement may be completely out of date.

On 13/07/2016 14:51, James Percival wrote:

Experimenting on the college cluster, this appears to give answers of
the right form with |-DCOMPILER_ID=gcc| regardless of the compiler which
was actually used to compile the vtk library itself. I /think/ that in
this case this only controlling the syntax of the output, and
-I/vtk/include/stuff and a list of absolute library paths works for both
gcc and intel (plus clang). Do we actually claim to support any other
compiler?

Dr Angus Creech

Research Fellow
Institute of Energy Systems
University of Edinburgh
Scotland

www.research.ed.ac.uk/portal/acreech2

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

@tmbgreaves
Copy link
Contributor

@jrper - we currently only claim support for gcc and Intel 2015.

@anguscr - all working nicely for Intel 2015 now :-) 2016 is another story on many counts...

@ghost
Copy link

ghost commented Jul 13, 2016

Duly noted, Tim - I do wonder if it's worth the effort to support 2016.

Regards
Angus

On 13/07/2016 15:01, Tim Greaves wrote:

@jrper https://github.com/jrper - we currently only claim support for
gcc and Intel 2015.

@anguscr https://github.com/anguscr - all working nicely for Intel
2015 now :-) 2016 is another story on many counts...

Dr Angus Creech

Research Fellow
Institute of Energy Systems
University of Edinburgh
Scotland

www.research.ed.ac.uk/portal/acreech2

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

@stephankramer
Copy link
Contributor

@jrper: Fair enough - I could imagine though that this might depend not only on the specific compiler but also the environment that was used to built VTK, but I'm perfectly happy to go with the assumption this works in general until such time that we do find a platform where asking for the specific compiler seems necessary.

@tmbgreaves
Copy link
Contributor

Ubuntu Trusty, CentOS 6, and CentOS 7 tests now running.

@tmbgreaves tmbgreaves closed this Jul 20, 2016
@tmbgreaves tmbgreaves reopened this Jul 20, 2016
@tmbgreaves
Copy link
Contributor

The fluidity-dev package in CentOS is missing cmake - I'll push a new version of that and retest.

@jrper
Copy link
Contributor Author

jrper commented Jul 20, 2016

There's an argument that we ought to be testing this in the case that cmake isn't present as well as the case that it is (in fact it doesn't seem to be present in the trusty build on buildbot either, so the new code shouldn't be doing anything apart from adding a few error messages to the logs).

@tmbgreaves
Copy link
Contributor

I guess the problem arises that when you have the libraries in non-standard places/names it won't find them unless cmake gives useful information. This feels to me to be a reasonable failure, and expected on CentOS since one of the reasons we started down this route was that CentOS had non-standard VTK library naming -- hence I think it's not unreasonable to require cmake to help out :-)

@tmbgreaves
Copy link
Contributor

The RHEL/CentOS builds now have cmake added and are running to test.

@jrper
Copy link
Contributor Author

jrper commented Jul 25, 2016

That's a weird mix of successes and failures we're getting. Are the full config.log files available somewhere?

@tmbgreaves
Copy link
Contributor

I'm attempting to replicate them by hand at the moment to get the config out - but getting oddly inconsistent behaviour. I think I've done something interestingly wrong.

@tmbgreaves
Copy link
Contributor

There was one minor bug with an additional _ creeping in as CPP_FLAGS (vs CPPFLAGS) which I've fixed and squashed. This builds fine now on CentOS 6, CentOS7 [0], and xenial with vtk5.10, and if one small bug in the libproj package is fixed (softlinking libproj.so) it works with xenial with vtk6.2.

Hence looks good to merge.

[0] The CentOS 7 build is a bit creaky - cmake returns a broken set of include flags for VTK, breaking the automagic (-I//include/vtk instead of -I/usr/include/vtk) but since the subsequent detection looks for the CentOS naming scheme for vtk libraries, the configure and build end up working.

@tmbgreaves tmbgreaves merged commit 40f661d into master Nov 7, 2016
@jrper jrper mentioned this pull request Nov 7, 2016
@jrper jrper deleted the vtk_flags_from_cmake branch January 12, 2017 14:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants