[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: mkoctfile urgently needs attention before Octave 3.6.0 release
From: |
Lukas Reichlin |
Subject: |
Re: mkoctfile urgently needs attention before Octave 3.6.0 release |
Date: |
Thu, 29 Dec 2011 19:37:48 +0100 |
On 29.12.2011, at 17:52, Jordi Gutiérrez Hermoso wrote:
> 2011/12/29 Lukas Reichlin <address@hidden>:
>> On 29.12.2011, at 14:47, Jordi Gutiérrez Hermoso wrote:
>>
>>> Don't panic. :-)
>>>
>>> Calm down.
>>
>> I'll do my very best ;-)
>>
>>>> In order to circumvent these problems, I propose the following
>>>> solution that works from both Octave prompt and OS shell: Addition
>>>> of a new option "--link-all-libs" to mkoctfile
>>>
>>> No, this is not the solution. We need to understand the actual
>>> problem. You are proposing a heavy-handed solution because you don't
>>> understand the actual problem, and neither do we. We should work to do
>>> that instead of trying to revert to an old barbaric method of linking
>>> that happened to work for your case.
>>>
>>> Marco has already proposed a solution that seems to work for other
>>> cases. We are only missing yours.
>>>
>>> - Jordi G. H.
>>
>> I'm glad that Marco sent me a patch. But it's just a workaround for
>> the problem, not a solution. It's not good when you have to resort
>> to the shell, query some configuration variables and then feeding
>> the result to the next call of mkoctfile.
>
> This *is* a good solution. It's not something we invented for Octave.
> For example, pkg-config also does the same thing for many other Unix
> packages. It's also convenient. You could for example do
>
> mkoctfile foo.cc $(mkocfile -p BLAS_LIBS)
>
> This is just how shells work.
>
>> It should be possible from the Octave prompt and without tedious
>> fiddling with intermediate variables.
>
> I don't see a huge priority to recreate a Unix shell in Octave, so if
> calling mkoctfile.m involves using an intermediate variable, I don't
> see a problem. You don't even need the intermediate variable. For
> example, you could do
>
> mkoctfile("foo.cc", mkoctfile("-p","BLAS_LIBS"))
>
> which is roughly equivalent to its corresponding Unix shell call
> above.
>
> The only bug remaining is figuring out what linking flags you need on
> McIntosh OS 10, and why mkoctfile -p LAPACK_LIBS isn't producing those
> flags.
>
> - Jordi G. H.
I meant that it should work with only one call to mkoctfile. Something like
mkoctfile foo.cc --link-to-blas --link-to-lapack
mkoctfile then takes care of which BLAS and LAPACK versions are to be used and
how to avoid conflicts (my machine doesn't like it if it gets duplicate
arguments, e.g. when BLAS and LAPACK are both from Framework Accelerate).
Lukas
- mkoctfile urgently needs attention before Octave 3.6.0 release, Lukas Reichlin, 2011/12/29
- Re: mkoctfile urgently needs attention before Octave 3.6.0 release, Jordi Gutiérrez Hermoso, 2011/12/29
- Re: mkoctfile urgently needs attention before Octave 3.6.0 release, Lukas Reichlin, 2011/12/29
- Re: mkoctfile urgently needs attention before Octave 3.6.0 release, Jordi Gutiérrez Hermoso, 2011/12/29
- Re: mkoctfile urgently needs attention before Octave 3.6.0 release,
Lukas Reichlin <=
- Re: mkoctfile urgently needs attention before Octave 3.6.0 release, Jordi Gutiérrez Hermoso, 2011/12/29
- Re: mkoctfile urgently needs attention before Octave 3.6.0 release, Lukas Reichlin, 2011/12/29
- Re: mkoctfile urgently needs attention before Octave 3.6.0 release, Jordi Gutiérrez Hermoso, 2011/12/29
- Re: mkoctfile urgently needs attention before Octave 3.6.0 release, Ben Abbott, 2011/12/29
- Re: mkoctfile urgently needs attention before Octave 3.6.0 release, Lukas Reichlin, 2011/12/29