|
From: | Anirudha Bose |
Subject: | Re: MXE Octave: "... has no symbols" warning under Mac OS X |
Date: | Wed, 25 Sep 2013 02:05:57 +0530 |
On Wed, Sep 25, 2013 at 1:32 AM, Ben Abbott <address@hidden> wrote:
> <octave.log>On Sep 24, 2013, at 11:41 AM, Ben Abbott wrote:
> On Sep 24, 2013, at 2:59 AM, Anirudha Bose wrote:
>
>> If you send me the entire log of octave then I can understand better. I am not getting any such errors while building octave.
>
> I started by build with a "sudo make clean" and then ...
>
> $ autoconf
> $ ./configure --enable-native-build --enable-shared --disable-static \
> --target=darwin --build=darwin --host=darwin \
> --enable-pic-flag
> checking for gawk... gawk
> checking for grep that handles long lines and -e... /opt/local/bin/grep
> checking whether ln -s works... yes
> checking for a thread-safe mkdir -p... /opt/local/bin/gmkdir -p
> checking for a BSD-compatible install... /opt/local/bin/ginstall -c
> checking for darwin-gcc... no
> checking for gcc... gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables...
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking how to run the C preprocessor... gcc -E
> checking for egrep... /opt/local/bin/grep -E
> checking whether gcc needs -traditional... no
> darwin
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: creating tools/set_mxe_env.sh
> $ sudo make octave
> [check requirements]
> [build] build-autoconf
> [done] build-autoconf
> [build] build-automake
> [done] build-automake
> [build] build-bison
> [done] build-bison
> [build] build-cmake
> [done] build-cmake
> [build] build-flex
> [done] build-flex
> [build] build-gperf
> [done] build-gperf
> [build] build-libtool
> [done] build-libtool
> [build] build-pkg-config
> [done] build-pkg-config
> [build] build-texinfo
> [done] build-texinfo
> # create the CMake toolchain file
> [ -d '/Users/bpabbott/Development/mercurial/mxe-octave-anirudha/usr/x86_64-apple-darwin11.4.2/share/cmake/' ] || mkdir -p '/Users/bpabbott/Development/mercurial/mxe-octave-anirudha/usr/x86_64-apple-darwin11.4.2/share/cmake/'
> (if [ darwin = mingw ]; then echo 'set(CMAKE_SYSTEM_NAME Windows)'; echo 'set(MSYS 1)'; fi; if [ darwin = msvc ]; then echo 'set(MSVC 1)'; fi; if [ yes = yes ]; then echo 'set(BUILD_SHARED_LIBS ON)'; else echo 'set(BUILD_SHARED_LIBS OFF)'; fi; if [ no = yes ]; then echo 'set(BUILD_STATIC_LIBS ON)'; else echo 'set(BUILD_STATIC_LIBS OFF)'; fi; echo 'set(CMAKE_BUILD_TYPE Release)'; if [ darwin = msvc ]; then echo 'set(CMAKE_FIND_ROOT_PATH )'; echo 'set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM BOTH)'; else echo 'set(CMAKE_FIND_ROOT_PATH /Users/bpabbott/Development/mercurial/mxe-octave-anirudha/usr/x86_64-apple-darwin11.4.2)'; echo 'set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)'; fi; echo 'set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)'; echo 'set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)'; echo 'set(CMAKE_C_COMPILER gcc)'; echo 'set(CMAKE_CXX_COMPILER g++)'; echo 'set(CMAKE_Fortran_COMPILER /opt/local/bin/gfortran-mp-4.7)'; echo 'set(CMAKE_RC_COMPILER true)'; echo 'set(PKG_CONFIG_EXECUTABLE pkg-config)'; echo 'set(QT_QMAKE_EXECUTABLE qmake)'; if [ darwin = msvc ]; then echo 'set(CMAKE_INSTALL_PREFIX CACHE PATH "Installation Prefix")'; else echo 'set(CMAKE_INSTALL_PREFIX /Users/bpabbott/Development/mercurial/mxe-octave-anirudha/usr/x86_64-apple-darwin11.4.2 CACHE PATH "Installation Prefix")'; fi; echo 'set(CMAKE_BUILD_TYPE Release CACHE STRING "Debug|Release|RelWithDebInfo|MinSizeRel")') > '/Users/bpabbott/Development/mercurial/mxe-octave-anirudha/usr/x86_64-apple-darwin11.4.2/share/cmake/mxe-conf.cmake'
> touch cmake-toolchain-file.stamp
> [build] blas
> [done] blas
> [build] lapack
> [done] lapack
> [build] arpack
> [done] arpack
> [build] gmp
> [done] gmp
> [build] nettle
> [done] nettle
> [build] zlib
> [done] zlib
> [build] gnutls
> [done] gnutls
> [build] libiconv
> [done] libiconv
> [build] gettext
> [done] gettext
> [build] libidn
> [done] libidn
> [build] libgpg_error
> [done] libgpg_error
> [build] libgcrypt
> [done] libgcrypt
> [build] libssh2
> [done] libssh2
> [build] curl
> [done] curl
> [build] fftw
> [done] fftw
> [build] jpeg
> [done] jpeg
> [build] libpng
> [done] libpng
> [done] pthreads
> [build] freetype
> [done] freetype
> [build] fltk
> [done] fltk
> [build] expat
> [done] expat
> [build] fontconfig
> [done] fontconfig
> [build] glpk
> [done] glpk
> [build] gnuplot
> [done] gnuplot
> [build] bzip2
> [done] bzip2
> [build] jasper
> [done] jasper
> [build] xz
> [done] xz
> [build] tiff
> [done] tiff
> [build] lcms
> [done] lcms
> [build] libxml2
> [done] libxml2
> [build] libtool
> [done] libtool
> [build] graphicsmagick
> [done] graphicsmagick
> [build] hdf5
> [done] hdf5
> [build] pcre
> [done] pcre
> [build] pstoedit
> [done] pstoedit
> [build] qhull
> [done] qhull
> [build] qrupdate
> [done] qrupdate
> [build] openssl
> [done] openssl
> [build] lcms1
> [done] lcms1
> [build] libmng
> [done] libmng
> [build] dbus
> [done] dbus
> [build] qt
> [done] qt
> [build] qscintilla
> [done] qscintilla
> [build] ncurses
> [done] ncurses
> [build] readline
> [done] readline
> [build] suitesparse
> [done] suitesparse
> [build] texinfo
> [done] texinfo
> [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 36m42.443s
> user 26m19.358s
> sys 2m45.182s
> ------------------------------------------------------------
> [log] /Users/bpabbott/Development/mercurial/mxe-octave-anirudha/log/octave
>
>
> The log is attached.
>
> Ben
>
I noticed that the GraphicsMagick's libraries built using MXE are all static. My Macports build includes static libraries. Is that where the problem lies?GraphicsMagick won't compile as shared library. A separate Makefile has been provided to build shared libraries on UNIX platforms. It didn't work for me. I have used --build=i386 which necessarily compiles the package as static. It works fine for me.
One difference I see in your logs while comparing with mine is that you have X included in your build. I don't think that will be required on Mountain Lion. AFAIK Octave requires an X Server on Snow Leopard only. Can you try building octave with --without-x option? You need to make the change in src/octave.mk specific to Darwin system. I don't have access to my Mac, so I can't help you right you.Also, if you see the src/graphicsmagick.mk file you will find that it is compiled without X (--without-x), whereas your build is looking for X11 libraries.
[Prev in Thread] | Current Thread | [Next in Thread] |