octave-maintainers
[Top][All Lists]
Advanced

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

Re: Mac build script


From: Ian Esten
Subject: Re: Mac build script
Date: Mon, 2 Feb 2015 09:09:31 -0800

On Fri, Jan 30, 2015 at 12:10 PM, Ben Abbott <address@hidden> wrote:
>
>> On Jan 30, 2015, at 2:53 PM, Ian Esten <address@hidden> wrote:
>>
>> On Fri, Jan 30, 2015 at 10:12 AM, Ben Abbott <address@hidden> wrote:
>>>> On Jan 30, 2015, at 10:02 AM, Ian Esten <address@hidden> wrote:
>>>>
>>>> Hi all,
>>>>
>>>> I have a build script nearing completion that builds octave and its
>>>> dependencies. It will be easy to add a packaging stage, too.
>>>>
>>>> The script builds everything and then creates a  self contained app
>>>> bundle. I have all the library relocation(*) working correctly. The
>>>> remaining problem I am facing is that octave seems to be loading oct
>>>> files (and maybe other dynamically loaded code) relative to $prefix as
>>>> passed to configure. The comand line application loads fine, but the
>>>> gui app does not. It tries to dynamically load something that is
>>>> installed under $prefix, which fails because the dynamic code that is
>>>> installed there has not been relocated(*). The dynamic code in
>>>> question is something to do with fltk.
>>>>
>>>> So, my question is: is there a way to override octave looking for
>>>> dynamic libraries under $prefix?
>>>>
>>>> Thanks,
>>>> Ian
>>>>
>>>> * - when I say relocated, I am refering to using install_name_tool to
>>>> make the linker point to the appropriate library in the app bundle.
>>>
>>> In the past, I had made a similar effort. I documented much of what I did 
>>> hoping it would be useful for others. If I've properly recognized the 
>>> problem you've encountered, the link below should be helpful.
>>>
>>>        
>>> http://wiki.octave.org/Create_a_MacOS_X_App_Bundle_Using_MacPorts#Fixing_.22dyld:_Library_not_loaded.22_Errors
>>>
>>> Ben
>>>
>> Hi Ben,
>>
>> Thanks for the reply. My build script does the same as your m files.
>>
>> Having another quick look, the problem is not with anything FLTK
>> related. What is happening is that octave-3.8.2 is loading the
>> octave-cli-3.8.2 binary in the installed location. I've taken a brief
>> look at some of the octave code, and see that the install prefix gets
>> used a lot as a hard coded path. I also see that some uses of the hard
>> coded path look like they can be overridden with command line
>> arguments. I don't know yet if that will be enough to solve the
>> problems I describe.
>>
>> Ian
>
>
> Hi Ian,
>
> Please reply at the bottom to allow those who arrive late to read from top to 
> bottom.
>
> I have other shell scripts to launch Octave from a bundle. The second link 
> below sets up the shell environment.
>
> http://wiki.octave.org/Launch_octave
>
> http://wiki.octave.org/MacOS_X_App_Octave_Shell_Script
>
> This approach to setting up the environment for a relocatable bundle is 
> clumsy, but it looks preferable to other alternatives I've considered.
>
> Ben
>
>
>

That looks great, thanks. I'll give it a go.



reply via email to

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