octave-maintainers
[Top][All Lists]
Advanced

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

Re: MXE Octave: "... has no symbols" warning under Mac OS X


From: John W. Eaton
Subject: Re: MXE Octave: "... has no symbols" warning under Mac OS X
Date: Mon, 23 Sep 2013 10:52:55 -0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.12) Gecko/20130116 Icedove/10.0.12

On 09/23/2013 08:41 AM, Anirudha Bose wrote:

On Mon, Sep 23, 2013 at 5:50 PM, Ben Abbott <address@hidden
<mailto:address@hidden>> wrote:


    On Sep 22, 2013, at 11:12 PM, Anirudha Bose wrote:

     > On Mon, Sep 23, 2013 at 8:34 AM, Anirudha Bose
    <address@hidden <mailto:address@hidden>> wrote:
     >
     > On Mon, Sep 23, 2013 at 4:11 AM, Ben Abbott <address@hidden
    <mailto:address@hidden>> wrote:
     >
     > On Sep 22, 2013, at 5:18 PM, Anirudha Bose wrote:
     >
     > >
     > > On Mon, Sep 23, 2013 at 2:41 AM, Ben Abbott <address@hidden
    <mailto:address@hidden>> wrote:
     > > On Sep 22, 2013, at 12:48 PM, Anirudha Bose wrote:
     > >
     > > > On Sun, Sep 22, 2013 at 7:14 PM, Ben Abbott <address@hidden
    <mailto:address@hidden>> wrote:
     > > >
     > > >> On Sep 22, 2013, at 2:05 AM, Anirudha Bose wrote:
     > > >>
     > > >> >
     > > >> > On Sun, Sep 22, 2013 at 5:22 AM, Benjamin Abbott
    <address@hidden <mailto:address@hidden>> wrote:
     > > >> > On Sep 21, 2013, at 3:33 PM, Anirudha Bose
    <address@hidden <mailto:address@hidden>> wrote:
     > > >> >
     > > >> >> On Sun, Sep 22, 2013 at 12:44 AM, Ben Abbott
    <address@hidden <mailto:address@hidden>> wrote:
     > > >> >> On Sep 21, 2013, at 3:21 AM, Anirudha Bose wrote:
     > > >> >>
     > > >> >> >> Can you attempt to try to apply install_name_tool
    manually and then check the result with otool?
     > > >> >> >
     > > >> >> > This will be a very long process. I can try it though.
    Or better if I can find some tools to automate this job. For future
    use should I include your scripts in my MXE repo, so that others can
    try reusing your scripts?
     > > >> >>
     > > >> >> If you think my scripts are the correct approach, then go
    ahead and commit them. However, maybe before committing my scripts
    to your repo, maybe its a good idea to first determine the reason my
    scripts aren't working for you with the MXE approach?
     > > >> >>
     > > >> >> The good thing about mxe-octave is that it has grown very
    diverse and capable of doing many things. I am not familiar with
    m-scripting so I will have trouble debugging your scripts. But maybe
    someone else can reuse your scripts to make them work with MXE. I
    have come up with a temporary solution in Python and I have been
    able to produce a working application bundle of Octave for Mac OS X.
    I have committed all the scripts to my repo since it will be handy
    to have them all at one place.
     > > >> >
     > > >> > I'll pulled a copy of you repo.  I haven't used mxe
    before.  What commands are needed to produce a MacOSX app?
     > > >> >
     > > >> > Hi Ben.
     > > >> >
     > > >> > Here are the steps for compiling Octave from MXE.
     > > >> > 1. Check the requirements for Mac OS X in the file
    mxe-octave-anirudha/index.html#requirements.
     > > >> > 2. Build Octave with the command "sudo make octave".
     > > >> > 3. Make sure you have Macports version of gfortran
    installed in your machine. I will commit a change to add gfortran in
    the list of requirements.
     > > >> > 4. If you are able to get a successful build, then you can
    use my script mxe-octave-anirudha/darwin_files/standalone.py to
    rewrite the Mach-O headers. Make sure you have created octave.app in
    the "dist" directory inside mxe-octave-anirudha. You can find
    information on how to use standalone.py is present inside the file.
     > > >> >
     > > >> > Let me know if you face any problems.
     > > >> >
     > > >> > - Anirudha
     > > >>
     > > >> I think I'm in need of a bit more detail.  I've cloned your
    repo.  Does your repo include all the mxe stuff and your changes?  I
    see a configure.ac <http://configure.ac> and Makefile.in.  Do I
    start with autoconf -> configure -> make?  To build a Darwin app are
    there any specific options needed?
     > > >>
     > > > Oops! Sorry for missing that out. Do autoconf -> ./configure
    --enable-native-build --enable-shared --disable-static
    --target=darwin --build=darwin --host=darwin --enable-pic-flag
    --enable-64 -> sudo make octave
     > > >
     > > > - Anirudha
     > >
     > > I encountered an error when building bzip2. I've attached the
    log.  Is this something your encountered?
     > >
     > > Ben
     > >
     > > Failed to build package bzip2!
     > > ------------------------------------------------------------
     > > gcc -fpic -fPIC -Wall -Winline -O2 -g -D_FILE_OFFSET_BITS=64 -c
    bzlib.c
     > > gcc -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.6
    blocksort.o huffman.o crctable.o randtable.o compress.o decompress.o
    bzlib.o
     > > ld: unknown option: -soname
     > > collect2: ld returned 1 exit status
     > > make[2]: *** [all] Error 1
     > > make[1]: *** [build-only-bzip2] Error 2
     > > real    0m2.182s
     > > user    0m1.660s
     > > sys     0m0.336s
     > > ------------------------------------------------------------
     > > [log]
      /Users/bpabbott/Development/mercurial/mxe-octave-anirudha/log/bzip2
     > >
     > >
     > > I have pushed some patches which fix your problem. Just pull
    the recent changes in my repo. With the current snapshot you are
    using, compiling of readline, bzip2, and graphicsmagick is likely to
    fail.
     > >
     > > - Anirudha
     >
     > I pulled, and started fresh with "autoconf; ./configure ...", but
    am still encountering the same error.
     >
     > Failed to build package bzip2!
     > ------------------------------------------------------------
     > gcc -fpic -fPIC -Wall -Winline -O2 -g -D_FILE_OFFSET_BITS=64 -c
    bzlib.c
     > gcc -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.6
    blocksort.o huffman.o crctable.o randtable.o compress.o decompress.o
    bzlib.o
     > ld: unknown option: -soname
     > collect2: ld returned 1 exit status
     > make[2]: *** [all] Error 1
     > make[1]: *** [build-only-bzip2] Error 2
     > real    0m2.994s
     > user    0m1.708s
     > sys     0m0.366s
     > ------------------------------------------------------------
     > [log]
      /Users/bpabbott/Development/mercurial/mxe-octave-anirudha/log/bzip2
     >
     > make: ***
    
[/Users/bpabbott/Development/mercurial/mxe-octave-anirudha/installed-packages/bzip2]
    Error 1
     >
     > This should not happen. Can you send me the log of bzip2 in your
    current copy of repo? Did you use "--target=darwin" exactly while
    doing ./configure... ? On my system bzipp2 compiles fine.

    The commands I used were ...

    sudo make clean
    autoconf
    ./configure --enable-native-build --enable-shared --disable-static \
                 --target=darwin --build=darwin --host=darwin \
                 --enable-pic-flag --enable-64


It seems --enable-64 doesn't work right now. It won't work until I write
a patch to generate code with 8 byte signed integer value.

What do you mean by "write a patch to generate code with 8 byte signed integer value"? Generate what code?

In any case, I don't recommend compiling with --enable-64 unless you really need it (chances are good that you don't) and you know what you are doing. To use 64-bit indexing in Octave requires that you also build blas, lapack, arpack, and qrupdate to correctly use 64-bit integers for indexing.

jwe



reply via email to

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