Opened 13 years ago

Closed 12 years ago

#385 closed defect (wontfix)

AX_PATH_GSL fails if gslcblas is not available

Reported by: Peter Owned by: Jari Häkkinen
Priority: trivial Milestone: yat 0.6
Component: build Version: trunk
Keywords: Cc:

Description

I tried removing gslcblas and then AX_PATH_GSL fails with these warnings:

** Could not run GSL test program, checking why...
** The test program failed to compile or link. See the file config.log for the
** exact error that occured. This usually means GSL was incorrectly installed
** or that you have moved GSL since it was installed. In the latter case, you
** may want to edit the gsl-config script: /usr/bin/gsl-config

at the end of yat's configure it says

configure: WARNING:
        GSL found but not the required version. Please install
        GSL version 1.8 or later

which is not a very accurate description on what is going on.

This case is not very likely to occur because gslcblas is when gsl is installed. Nevertheless, if I choose to use another cblas e.g. atlas I think it is wrong that configure doesn't go through.

Change History (7)

comment:1 Changed 13 years ago by Peter

Milestone: yat 0.x+yat 0.5
Resolution: fixed
Status: newclosed

fixed in [1349]

comment:2 Changed 12 years ago by Jari Häkkinen

Resolution: fixed
Status: closedreopened

Resolution in changeset:1349 pollutes users environment. Avoid this.

comment:3 Changed 12 years ago by Peter

Milestone: yat 0.5yat 0.6

comment:4 Changed 12 years ago by Peter

Note r1903 reintroduced this issue. I wouldn't mind closing this ticket as wontfix. Having a libgsl without libgslcblas could be considered as a broken installation. The problem with the inaccurate error message is ticket:526, which was fixed in 0.6pre.

comment:5 in reply to:  4 ; Changed 12 years ago by Jari Häkkinen

Replying to peter:

Note r1903 reintroduced this issue. I wouldn't mind closing this ticket as wontfix. Having a libgsl without libgslcblas could be considered as a broken installation. The problem with the inaccurate error message is ticket:526, which was fixed in 0.6pre.

But the problem is NOT a missing libgslcblas, the issue is because the detection of cblas was not correct in configure.ac and the use of the finding in m4/gsl.m4 was wrong ... and the order of libs in linking was wrong. Of course, one could argue that gsl should only depend on its own cblas in testing for existence and version but currently it depends on whatever cblas configure finds.

If we want gsl.m4 to use only libgslcblas then this can be place in gsl.m4 with an option to override it with the environment variable.

The latest commits tries to solve several issues ... report problems and they'll be resolved quickly.

comment:6 in reply to:  5 Changed 12 years ago by Peter

Replying to jari:

But the problem is NOT a missing libgslcblas,

Disagree, the problem reported here was a missing libgslcblas. I removed it intentionally to check this. Therefore, this issue is rather artificial and should have lowest possible priority.

the issue is because the detection of cblas was not correct in configure.ac and the use of the finding in m4/gsl.m4 was wrong ... and the order of libs in linking was wrong.

Yes, all those things were wrong, but that was not the problem here. The problem was that the test in gsl.m4 uses -lgslcblas when linking and if libgslcblas is gone it will fail. Again, this issue is rather artificial.

Of course, one could argue that gsl should only depend on its own cblas in testing for existence and version but currently it depends on whatever cblas configure finds.

But the problem is that it depends on whatever cblas plus its own cblas. I tried to fix so it only depended on whatever cblas and not its own cblas.

comment:7 Changed 12 years ago by Jari Häkkinen

Resolution: wontfix
Status: reopenedclosed
Note: See TracTickets for help on using tickets.