octave-maintainers
[Top][All Lists]
Advanced

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

Re: Relocatable octave


From: Paul Kienzle
Subject: Re: Relocatable octave
Date: Fri, 1 Jun 2007 20:22:52 -0400


On Jun 1, 2007, at 2:25 PM, John W. Eaton wrote:

A test gave me

    octave:14> mkoctfile oregonator.cc
    /usr/bin/ld: can't open: /tmp/octave-2.9.12/bin/octave-2.9.12 \
      (No such file or directory, errno = 2)
    collect2: ld returned 1 exit status
    warning: mkoctfile exited with failure status

 So I needed to set up (at least)

    export DL_LDFLAGS "-bundle -bundle_loader \
      /Users/MyHome/octave.app/Contents/Resources/bin/octave-2.9.12"

but I do think that this isn't the right path I'm taking even if it does work with this environment variable (LDFLAGS -> bin)?!

I don't know what the purpose of the -bundle_loader option is, or why its argument is the Octave binary itself.

Mac wants to resolve all references at link time. Since some of these references are in the octave binary this is indicated by the -bundle_loader option.

As of 10.3, the following linker option is available:

        -undefined dynamic_lookup

It may be that if this option is given to the linker then -bundle_loader is no longer required. This is what distutils for macpython 2.4 uses.

You can also try with only the -bundle option, and no -undefined or -bundle_loader options.

        - Paul

PS, Here are the symbols defined in octave:

h123063:/usr/local/bin pkienzle$ nm octave | grep -v "U "
0000200c D _NXArgc
00002008 D _NXArgv
00001ee5 t ___cxa_atexit
00001000 A ___dso_handle
00001ffc s ___i686.get_pc_thunk.bx
00002000 D ___progname
000018ec t __dyld_func_lookup
00001000 A __mh_execute_header
000017fe t __start
00001b29 t _add_routine
00001f12 t _atexit
00001d4f t _atexit_common
00002020 S _catch_exception_raise
00002024 S _catch_exception_raise_state
00002028 S _catch_exception_raise_state_identity
00001947 t _check_cxa_atexit
0000202c S _clock_alarm_reply
00001903 t _cxa_atexit_check_1
000018f2 t _cxa_atexit_check_2
00001c7e t _cxa_atexit_wrapper
00002030 S _do_mach_notify_dead_name
00002034 S _do_mach_notify_no_senders
00002038 S _do_mach_notify_port_deleted
0000203c S _do_mach_notify_send_once
00002040 S _do_seqnos_mach_notify_dead_name
00002044 S _do_seqnos_mach_notify_no_senders
00002048 S _do_seqnos_mach_notify_port_deleted
0000204c S _do_seqnos_mach_notify_send_once
00002004 D _environ
000019bc t _get_globals
00001f48 T _main
00002050 S _receive_samples
00001bc2 t _run_routines
000018e0 t dyld_stub_binding_helper
000017d4 T start



reply via email to

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