[PD] compiling iemmatrix on windows

Thomas Grill gr at grrrr.org
Tue May 10 10:03:00 CEST 2005

> and thats the errormessages...
> D:\pd\iemlib\iemmatrix\src>mingw32-make -f 
> d:\pd\iemlib\iemmatrix\src\makefile.pd-mingw
> g++ -shared  iemmatrix.c mtx_binops.c mtx_check.c mtx_cholesky.c 
> mtx_col.c mtx_diag.c mtx_diegg.c mtx_distance2.c mtx_eg
> g.c mtx_element.c mtx_eye.c mtx_inverse.c mtx_matrix.c mtx_mean.c 
> mtx_ones.c mtx_pivot.c mtx_print.c mtx_rand.c mtx_resi
> ze.c mtx_roll.c mtx_row.c mtx_scroll.c mtx_size.c mtx_tilde.c 
> mtx_trace.c mtx_transpose.c mtx_zeros.c d:/pd/bin/pd.dll d
> :/pd/bin/pthreadVC.dll  -o D:/pd/iemlib/iemmatrix/iemmatrix.dll
> mtx_binops.c: In function `void mtx_bin_matrix2(t_mtx_binmtx*, 
> t_symbol*, int, t_atom*)':
> mtx_binops.c:31: warning: converting to `int' from `t_float'
> mtx_binops.c:32: warning: converting to `int' from `t_float'
> mtx_binops.c:39: error: invalid conversion from `void*' to `t_atom*'
> mtx_binops.c: In function `void mtx_addscalar_matrix(t_mtx_binscalar*, 
> t_symbol*, int, t_atom*)':
> mtx_binops.c:74: warning: converting to `int' from `t_float'
> mtx_binops.c:74: warning: converting to `int' from `t_float'
> mtx_binops.c: In function `void mtx_add_matrix(t_mtx_binmtx*, 
> t_symbol*, int, t_atom*)':
> mtx_binops.c:108: warning: converting to `int' from `t_float'
> mtx_binops.c:109: warning: converting to `int' from `t_float'
> mtx_binops.c: In function `void mtx_add_float(t_mtx_binmtx*, t_float)':
> mtx_binops.c:148: warning: converting to `int' from `t_float'
> mtx_binops.c:149: warning: converting to `int' from `t_float'
> mtx_binops.c: In function `void mtx_add_setup()':
> mtx_binops.c:192: error: invalid conversion from `int' to `t_atomtype'
> mtx_binops.c:192: error:   initializing argument 6 of `_class* 
> class_new(t_symbol*, void*(*)(), void (*)(), size_t, int,
> t_atomtype, ...)'

Hi Marius,
you are obviously using the C++ compiler g++ for plain C sources.
In the makefile try replacing $(CXX) with $(CC). This should at least 
reduce the number of error messages.

In case you have flext from cvs installed, you can also try to use its 
build system to build iemmatrix.
Just create a file package.txt, with
SRCS=iemmatrix.c mtx_binops.c ....... (all source files)

and then run "pathtoflext\build.bat pd msvc". This should also work 
with MinGW.

best greetings,

More information about the Pd-list mailing list