octave-maintainers
[Top][All Lists]
Advanced

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

MXE and problems adding in llvm and Java


From: PhilipNienhuis
Subject: MXE and problems adding in llvm and Java
Date: Sun, 3 Mar 2013 14:47:09 -0800 (PST)

This weekend I had some time to experiment with the MXE builds. Here's a
progress report.

When following the "official" procedure (make dist etc, see 
https://mailman.cae.wisc.edu/pipermail/octave-maintainers/2013-March/032395.html
a Windows build of Octave is produced which -AFAICS- works without obvious
glitches (e.g., the stability of e.g. the GUI isn't worse than under Linux,
and I find the GUI already quite acceptable). 

llvm is built, but not used (yet?). John reported about (unspecified)
problems with Java support. So I tried to get llvm and Java into the build,
but that gives some -for me- untractable problems and build errors.

Both Java and llvm should be enabled by editing mxe-octave/src/octave.mk and
adding in the lines:

--enable-jit \
--with-java-homedir=/mnt/winxp/Programs/Java/jdk1.6.0_33 \
--with-java-libdir=/mnt/winxp/Programs/Java/jdk1.6.0_33/jre/bin/client \

in the relevant configure command section.
(Note the Java entries are valid for my (Windows/Linux/eComstation (OS/2)
multiboot) machine and must point to a Windows-based Java installation. The
location of jvm.dll on Windows wasn't obvious for for at least MXE configure
so must be manually added).

Now, if either or both of llvm and Java are enabled the build errors out
(see bottom of mail).
To me it looks like there's corruption (overflow?) - but who am I. Yet with
just Java, or just llvm, or both enabled, the location where the build
errors out looks consistent AFAICS. 
If I remove the extra lines in octave.mk the build proceeds normally.

Philip

:
libtool: link: i686-pc-mingw32-g++ -shared -nostdlib
/home/philip/devel/octdev/mxe/mxe-octave/usr/lib/gcc/i686-pc-mingw32/4.7.2/../../../../i686-pc-mingw32/lib/dllcrt2.o
/home/philip/devel/octdev/mxe/mxe-octave/usr/lib/gcc/i686-pc-mingw32/4.7.2/crtbegin.o
 
dldfcn/.libs/dldfcn___delaunayn___la-__delaunayn__.o  
-L/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/.build/liboctave/.libs
./.libs/liboctinterp.dll.a
-L/home/philip/devel/octdev/mxe/mxe-octave/usr/i686-pc-mingw32/lib
-L/home/philip/devel/octdev/mxe/mxe-octave/tmp-gcc/gcc-4.7.2.build/i686-pc-mingw32/winsup/mingw
-L/home/philip/devel/octdev/mxe/mxe-octave/tmp-gcc/gcc-4.7.2.build/i686-pc-mingw32/winsup/w32api/lib
-L/home/philip/devel/octdev/mxe/mxe-octave/usr/lib/gcc/i686-pc-mingw32/4.7.2
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/.build/liboctave/.libs/liboctave.dll.a
/home/philip/devel/octdev/mxe/mxe-octave/usr/i686-pc-mingw32/lib/libhdf5.dll.a
-lz
/home/philip/devel/octdev/mxe/mxe-octave/usr/i686-pc-mingw32/lib/libfontconfig.dll.a
-lfreetype
/home/philip/devel/octdev/mxe/mxe-octave/usr/i686-pc-mingw32/lib/libexpat.dll.a
-lopengl32 -lglu32 ../liboctave/.libs/liboctave.dll.a -lcholmod -lumfpack
-lamd -lcamd -lcolamd -lccolamd -lcxsparse -larpack
/home/philip/devel/octdev/mxe/mxe-octave/usr/i686-pc-mingw32/lib/libqrupdate.dll.a
/home/philip/devel/octdev/mxe/mxe-octave/usr/i686-pc-mingw32/lib/libfftw3.dll.a
/home/philip/devel/octdev/mxe/mxe-octave/usr/i686-pc-mingw32/lib/libfftw3f.dll.a
-llapack -lblas -lreadline -ltermcap
/home/philip/devel/octdev/mxe/mxe-octave/usr/i686-pc-mingw32/lib/libpcre.dll.a
/home/philip/devel/octdev/mxe/mxe-octave/usr/lib/gcc/i686-pc-mingw32/4.7.2/libgfortran.dll.a
/home/philip/devel/octdev/mxe/mxe-octave/usr/lib/gcc/i686-pc-mingw32/4.7.2/libquadmath.dll.a
/home/philip/devel/octdev/mxe/mxe-octave/usr/i686-pc-mingw32/lib/libqhull.dll.a
-luser32 -lkernel32 -lgdi32 -lws2_32 -luser32 -lkernel32
-L/home/philip/devel/octdev/mxe/mxe-octave/usr/lib/gcc/i686-pc-mingw32/4.7.2/../../../../i686-pc-mingw32/lib
/home/philip/devel/octdev/mxe/mxe-octave/usr/lib/gcc/i686-pc-mingw32/4.7.2/libstdc++.dll.a
-lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt -lpthread -ladvapi32
-lshell32 -luser32 -lkernel32 -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex
-lmsvcrt
/home/philip/devel/octdev/mxe/mxe-octave/usr/lib/gcc/i686-pc-mingw32/4.7.2/crtend.o
  
-mieee-fp -O2 -pthread   -pthread -o dldfcn/.libs/__delaunayn__.dll
-Wl,--enable-auto-image-base -Xlinker --out-implib -Xlinker
dldfcn/.libs/__delaunayn__.dll.a
dldfcn/.libs/__dsearchn__.o: In function `~octave_base_value':
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/octave-value/ov-base.h:211:
undefined reference to `vtable for octave_base_value'
dldfcn/.libs/__dsearchn__.o: In function `G__dsearchn__':
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__dsearchn__.cc:37:
undefined reference to `check_version(std::string const&, std::string
const&)'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__dsearchn__.cc:37:
undefined reference to `error_state'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__dsearchn__.cc:37:
undefined reference to `octave_dld_function::create(octave_value_list
(*)(octave_value_list const&, int), octave_shlib const&, std::string const&,
std::string const&)'
dldfcn/.libs/__dsearchn__.o: In function
`Z13F__dsearchn__RK17octave_value_listi':
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__dsearchn__.cc:48:
undefined reference to `print_usage()'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__dsearchn__.cc:55:
undefined reference to `error_state'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__dsearchn__.cc:58:
undefined reference to `error(char const*, ...)'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__dsearchn__.cc:104:
undefined reference to `octave_value::octave_value(ColumnVector const&)'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__dsearchn__.cc:105:
undefined reference to `octave_value::octave_value(ColumnVector const&)'
dldfcn/.libs/__dsearchn__.o: In function
`ZN17octave_value_list6resizeEiRK12octave_value':
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/interp-core/oct-obj.h:96:
undefined reference to `Array<octave_value>::resize(dim_vector const&,
octave_value const&)'
dldfcn/.libs/__dsearchn__.o: In function `octave_base_value':
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/octave-value/ov-base.h:207:
undefined reference to `vtable for octave_base_value'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/octave-value/ov-base.h:207:
undefined reference to `vtable for octave_base_value'
dldfcn/.libs/__dsearchn__.o:__dsearchn__.cc:(.rdata$_ZTV5ArrayI12octave_valueE[__ZTV5ArrayI12octave_valueE]+0x10):
undefined reference to `Array<octave_value>::resize_fill_value() const'
dldfcn/.libs/dldfcn___delaunayn___la-__delaunayn__.o: In function
`~octave_base_value':
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/octave-value/ov-base.h:211:
undefined reference to `vtable for octave_base_value'
dldfcn/.libs/dldfcn___delaunayn___la-__delaunayn__.o: In function
`G__delaunayn__':
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__delaunayn__.cc:67:
undefined reference to `check_version(std::string const&, std::string
const&)'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__delaunayn__.cc:67:
undefined reference to `error_state'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__delaunayn__.cc:67:
undefined reference to `octave_dld_function::create(octave_value_list
(*)(octave_value_list const&, int), octave_shlib const&, std::string const&,
std::string const&)'
dldfcn/.libs/dldfcn___delaunayn___la-__delaunayn__.o: In function
`Z14F__delaunayn__RK17octave_value_listi':
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__delaunayn__.cc:79:
undefined reference to `octave_value::octave_value(double)'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__delaunayn__.cc:84:
undefined reference to `print_usage()'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__delaunayn__.cc:196:
undefined reference to `error(char const*, ...)'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__delaunayn__.cc:206:
undefined reference to `warning(char const*, ...)'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__delaunayn__.cc:192:
undefined reference to `octave_value::octave_value(Matrix const&, MatrixType
const&)'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__delaunayn__.cc:216:
undefined reference to `octave_value::octave_value(RowVector const&)'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__delaunayn__.cc:168:
undefined reference to `error(char const*, ...)'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__delaunayn__.cc:145:
undefined reference to `error(char const*, ...)'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/dldfcn/__delaunayn__.cc:115:
undefined reference to `error(char const*, ...)'
dldfcn/.libs/dldfcn___delaunayn___la-__delaunayn__.o: In function
`ZN17octave_value_list6resizeEiRK12octave_value':
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/interp-core/oct-obj.h:96:
undefined reference to `Array<octave_value>::resize(dim_vector const&,
octave_value const&)'
dldfcn/.libs/dldfcn___delaunayn___la-__delaunayn__.o: In function
`octave_base_value':
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/octave-value/ov-base.h:207:
undefined reference to `vtable for octave_base_value'
/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/libinterp/octave-value/ov-base.h:207:
undefined reference to `vtable for octave_base_value'
dldfcn/.libs/dldfcn___delaunayn___la-__delaunayn__.o:__delaunayn__.cc:(.rdata$_ZTV5ArrayI12octave_valueE[__ZTV5ArrayI12octave_valueE]+0x10):
undefined reference to `Array<octave_value>::resize_fill_value() const'
collect2: error: ld returned 1 exit status
collect2: error: ld returned 1 exit status
make[5]: *** [dldfcn/__dsearchn__.la] Error 1
make[5]: *** Waiting for unfinished jobs....
make[5]: *** [dldfcn/__delaunayn__.la] Error 1
make[5]: Leaving directory
`/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/.build/libinterp'
make[4]: *** [install] Error 2
make[4]: Leaving directory
`/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/.build/libinterp'
make[3]: *** [install-recursive] Error 1
make[3]: Leaving directory
`/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/.build'
make[2]: *** [install] Error 2
make[2]: Leaving directory
`/home/philip/devel/octdev/mxe/mxe-octave/tmp-octave/octave-3.7.2+/.build'
make[1]: *** [build-only-octave] Error 2
make[1]: Leaving directory `/home/philip/devel/octdev/mxe/mxe-octave'

real    31m47.040s
user    55m37.141s
sys     2m17.182s
address@hidden 20130303_224605]$






--
View this message in context: 
http://octave.1599824.n4.nabble.com/MXE-and-problems-adding-in-llvm-and-Java-tp4650498.html
Sent from the Octave - Maintainers mailing list archive at Nabble.com.


reply via email to

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