octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Octave/Win32 update


From: David Bateman
Subject: Re: Octave/Win32 update
Date: Tue, 30 Jan 2007 22:37:03 +0100
User-agent: Thunderbird 1.5.0.7 (X11/20060921)

Michael Goffioul wrote:
> 
>>> Indeed, the package does not contain all these additional files. On
>>> the other hand,
>>> do you actually need them (at least for simple examples)? Can you try
>>> the link command
>>> by removing all libs except those present in the system (-loctinterp
>>> -loctave -lcruft)?
>>>     
>>
>> Good point, I could have thought of that.
>>
>> C:\programs\Octave\bin>  cc-msvc -shared -g -o c:\temp\hello.oct
>> c:\temp\hello.o -LC:\Programs\octave\lib\octave-2.9.9+ -loctinterp
>> -loctave -lcruft
>>    Creating library c:\temp\hello.lib and object c:\temp\hello.exp
>> Nothing to do!
>> Modes of operation:
>>    -hashupdate         Update hashes of member files
>>    -makecdfs           Generate CDF files to make catalogs
>>    -verbose            Disply piles of debugging information
>>
>> Modifiers:
>>    -manifest <foo.man> The name of the manifest to work with
>>
>> Normal usage:   mt.exe -hashupdate -makecdfs -manifest foo.man
>>
>> I do not know what to make of this additional output, but I get a
>> working hello.oct which can be called from octave.
>>   
> 
> "mt" is a tool from Visual Studio for manipulating manifest files.
> However, the
> output that you get does not correspond to the actual "mt" I'm using.
> This tool
> is called automatically by the cc-msvc wrapper (it embeds automatically the
> manifest file into the executable/dll). Can you try to find the first
> "mt.exe" that
> you find in your PATH? You can do this in octave with
> 
>    file_in_path(EXEC_PATH, "mt.exe")
> 
>> So it seems that: no, these libraries are not needed in this example.
>>
>> I have one other example that uses octave_fftw::fft where I will try
>> to work around the missing fftw3.h header and see if linking succeeds
>> similar to the hello.cc example
>>
>> Aside from this: Is it planned to eventually distribute the headers
>> and .lib libraries along with the octave binary?
>>   
> 
> My idea was to distribute only the things needed to build oct files and
> support
> the octave API. For the rest, I don't know; maybe I could include them
> in the
> installer as optional packages; but this becomes more difficult than I
> thought
> to know where to put the limit.
> 

If you want to build oct-files that use FFTW then it seems logical to me
that the header files of FFTW should be installed.. The responsibility
should be on the builder of the code to ensure that they have the
require files except the minimum needed to build basic oct-files.. An
interesting test to see how many problems we might have is to try and
build the octave-forge packages that have no external and see what the
problems are..

D.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]