[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: MXE Octave: "... has no symbols" warning under Mac OS X
From: |
Ben Abbott |
Subject: |
Re: MXE Octave: "... has no symbols" warning under Mac OS X |
Date: |
Mon, 23 Sep 2013 16:19:39 -0400 |
On Sep 23, 2013, at 12:03 PM, Anirudha Bose wrote:
> On Mon, Sep 23, 2013 at 8:02 PM, Ben Abbott <address@hidden> wrote:
>
> On Sep 23, 2013, at 9:37 AM, Ben Abbott wrote:
>
> > On Sep 23, 2013, at 8:41 AM, Anirudha Bose wrote:
> >
> >> On Mon, Sep 23, 2013 at 5:50 PM, Ben Abbott <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> wrote:
> >>>
> >>> On Mon, Sep 23, 2013 at 4:11 AM, Ben Abbott <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> 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> 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>
> >>>>>>> wrote:
> >>>>>>> On Sep 21, 2013, at 3:33 PM, Anirudha Bose <address@hidden> wrote:
> >>>>>>>
> >>>>>>>> On Sun, Sep 22, 2013 at 12:44 AM, Ben Abbott <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 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.
> >>
> >> sudo make octave
> >>
> >>> Just to be sure I'm current, my tip is below
> >>>
> >>> Bens-MacBook-Pro:mxe-octave-anirudha bpabbott$ hg tip
> >>> changeset: 3228:d037848bada2
> >>> tag: tip
> >>> user: Anirudha Bose <address@hidden>
> >>> date: Mon Sep 23 02:52:01 2013 +0530
> >>> summary: [Darwin] Fix compiling of GraphicsMagick
> >>>
> >>> Ben
> >>>
> >>> What is the value of MXE_SYSTEM in your build? You can check that in
> >>> mxe-octave-anirudha/Makefile.
> >>
> >> fgrep -in MXE_SYSTEM Makefile
> >> 11:MXE_SYSTEM := darwin
> >>
> >> Iv'e attached the bzip2 log.
> >>
> >> Ben
> >>
> >> Ben, I don't find any reason why bzip2 doesn't compile on your system. I
> >> saw your logs and the only explanation I can give is that you might have
> >> forgotten to do "hg update" after doing "hg pull". Can you please check
> >> and let me know?
> >
> > Opps ... you deduced correctly. bzip2 is now building fine. However, I'm
> > having trouble with qt4. The download if failing. "make" is trying to
> > download qt-4.8.3, but I don't see it on the web site. I do see 4.8.5
> >
> > http://download.qt-project.org/official_releases/qt/4.8/
> >
> > Ben
>
> I downloaded 4.8.3 from the qt archive (thanks to Michael for pointing the
> archive out to me). I'm now getting the build error below.
>
> g++
> -Wl,-rpath-link,/Users/bpabbott/Development/mercurial/mxe-octave-anirudha/usr/x86_64-apple-darwin11.4.2/lib
>
> -L/Users/bpabbott/Development/mercurial/mxe-octave-anirudha/usr/x86_64-apple-darwin11.4.2/lib
> -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5 -Xarch_x86_64
> -mmacosx-version-min=10.5 -o ../../../bin/moc release-shared/moc.o
> release-shared/preprocessor.o release-shared/generator.o
> release-shared/parser.o release-shared/token.o release-shared/main.o
> -L/Users/bpabbott/Development/mercurial/mxe-octave-anirudha/usr/x86_64-apple-darwin11.4.2/lib
>
> -L/Users/bpabbott/Development/mercurial/mxe-octave-anirudha/tmp-qt/qt-everywhere-opensource-src-4.8.3/src/tools/bootstrap
> -lbootstrap
> -L/Users/bpabbott/Development/mercurial/mxe-octave-anirudha/usr/x86_64-apple-darwin11.4.2/lib
> -framework CoreServices -lz -lz
> ld: unknown option: -rpath-link
> collect2: ld returned 1 exit status
> make[3]: *** [../../../bin/moc] Error 1
> make[2]: *** [sub-moc-make_default-ordered] Error 2
> make[1]: *** [build-only-qt] Error 2
>
> I have pushed a changeset. You should not get the above error now.
>
> - Anirudha
Thanks. All the dependencies now build. Unfortunately, building octave fails
...
[build] octave
Failed to build package octave!
------------------------------------------------------------
collect2: ld returned 1 exit status
make[5]: *** [dldfcn/__magick_read__.la] Error 1
make[4]: *** [install] Error 2
make[3]: *** [install-recursive] Error 1
make[2]: *** [install] Error 2
make[1]: *** [build-only-octave] Error 2
real 29m24.419s
user 25m6.912s
sys 2m24.569s
------------------------------------------------------------
[log] /Users/bpabbott/Development/mercurial/mxe-octave-anirudha/log/octave
The log ends with ...
Undefined symbols for architecture x86_64:
"_FT_Init_FreeType", referenced from:
_RenderFreetype in
libGraphicsMagick.a(magick_libGraphicsMagick_la-annotate.o)
"_FT_New_Face", referenced from:
_RenderFreetype in
libGraphicsMagick.a(magick_libGraphicsMagick_la-annotate.o)
"_FT_Done_FreeType", referenced from:
_RenderFreetype in
libGraphicsMagick.a(magick_libGraphicsMagick_la-annotate.o)
"_FT_Set_Charmap", referenced from:
_RenderFreetype in
libGraphicsMagick.a(magick_libGraphicsMagick_la-annotate.o)
"_FT_Select_Charmap", referenced from:
_RenderFreetype in
libGraphicsMagick.a(magick_libGraphicsMagick_la-annotate.o)
"_FT_Set_Char_Size", referenced from:
_RenderFreetype in
libGraphicsMagick.a(magick_libGraphicsMagick_la-annotate.o)
<snip></snip>
"_TIFFIsCODECConfigured", referenced from:
_WriteTIFFImage in libGraphicsMagick.a(magick_libGraphicsMagick_la-tiff.o)
"_TIFFWriteScanline", referenced from:
_WriteTIFFImage in libGraphicsMagick.a(magick_libGraphicsMagick_la-tiff.o)
"_TIFFDefaultTileSize", referenced from:
_WriteTIFFImage in libGraphicsMagick.a(magick_libGraphicsMagick_la-tiff.o)
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
make[5]: *** [dldfcn/__magick_read__.la] Error 1
make[4]: *** [install] Error 2
make[3]: *** [install-recursive] Error 1
make[2]: *** [install] Error 2
make[1]: *** [build-only-octave] Error 2
real 29m24.419s
user 25m6.912s
sys 2m24.569s
Ben
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, (continued)
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Anirudha Bose, 2013/09/22
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Ben Abbott, 2013/09/23
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Anirudha Bose, 2013/09/23
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Ben Abbott, 2013/09/23
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Michael Goffioul, 2013/09/23
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Ben Abbott, 2013/09/23
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Michael Goffioul, 2013/09/23
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, John W. Eaton, 2013/09/23
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Ben Abbott, 2013/09/23
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Anirudha Bose, 2013/09/23
- Re: MXE Octave: "... has no symbols" warning under Mac OS X,
Ben Abbott <=
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Anirudha Bose, 2013/09/23
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Anirudha Bose, 2013/09/24
- Message not available
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Ben Abbott, 2013/09/24
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Ben Abbott, 2013/09/24
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Anirudha Bose, 2013/09/24
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Anirudha Bose, 2013/09/24
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Ben Abbott, 2013/09/24
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Anirudha Bose, 2013/09/25
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Ben Abbott, 2013/09/25
- Re: MXE Octave: "... has no symbols" warning under Mac OS X, Ben Abbott, 2013/09/25