<div dir="ltr"><div><div><div><div><div><div>Hi,<br><br></div>Been wanting to do this for a while but it always keeps failing so could do with some tips.<br><br></div>I have the source from git<br><pre>git clone git://<a href="http://pure-data.git.sourceforge.net/gitroot/pure-data/pure-data">pure-data.git.sourceforge.net/gitroot/pure-data/pure-data</a></pre>
Then (as it&#39;s a minimal RPi image) have installed <br></div>automake (and dependencies: autoconf, autotools-dev, m4, libtool, gettext)<br><br></div>Also added libasound2-dev and tk8.5-dev (not sure if tk required?)<br>
<br></div><div>When running<br></div><div><br></div>./autogen.sh<br></div><div>then<br></div><div>./configure<br></div><div>and finally <br>make (I ran make previously so much shorter bit before it fails.<br></div><div><br>
</div>I get this:<br><div><br><div>autoreconf: Entering directory `.&#39;<br>autoreconf: <a href="http://configure.ac">configure.ac</a>: not using Gettext<br>autoreconf: running: aclocal --force -I m4/generated -I m4<br>^[[B^[[Bautoreconf: <a href="http://configure.ac">configure.ac</a>: tracing<br>
autoreconf: <a href="http://configure.ac">configure.ac</a>: adding subdirectory portaudio to autoreconf<br>autoreconf: Entering directory `portaudio&#39;<br>autoreconf: <a href="http://configure.in">configure.in</a>: not using Gettext<br>
autoreconf: running: aclocal --force <br>autoreconf: <a href="http://configure.in">configure.in</a>: tracing<br>autoreconf: <a href="http://configure.in">configure.in</a>: subdirectory bindings/cpp not present<br>autoreconf: running: libtoolize --copy --force<br>
libtoolize: putting auxiliary files in `.&#39;.<br>libtoolize: copying file `./ltmain.sh&#39;<br>libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])&#39; to <a href="http://configure.in">configure.in</a> and<br>libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.<br>
libtoolize: Consider adding `-I m4&#39; to ACLOCAL_AMFLAGS in Makefile.am.<br>autoreconf: running: /usr/bin/autoconf --force<br>autoreconf: <a href="http://configure.in">configure.in</a>: not using Autoheader<br>autoreconf: <a href="http://configure.in">configure.in</a>: not using Automake<br>
autoreconf: Leaving directory `portaudio&#39;<br>libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `m4/config&#39;.<br>libtoolize: copying file `m4/config/ltmain.sh&#39;<br>libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4/generated&#39;.<br>
libtoolize: copying file `m4/generated/libtool.m4&#39;<br>libtoolize: copying file `m4/generated/ltoptions.m4&#39;<br>libtoolize: copying file `m4/generated/ltsugar.m4&#39;<br>libtoolize: copying file `m4/generated/ltversion.m4&#39;<br>
libtoolize: copying file `m4/generated/lt~obsolete.m4&#39;<br>autoreconf: <a href="http://configure.ac">configure.ac</a>: not using Autoheader<br>autoreconf: running: automake --add-missing --copy --force-missing<br>autoreconf: Leaving directory `.&#39;<br>
root@BitChime:~/pure-data# ./configure<br>checking for a BSD-compatible install... /usr/bin/install -c<br>checking whether build environment is sane... yes<br>checking for a thread-safe mkdir -p... /bin/mkdir -p<br>checking for gawk... no<br>
checking for mawk... mawk<br>checking whether make sets $(MAKE)... yes<br>checking build system type... armv6l-unknown-linux-gnueabihf<br>checking host system type... armv6l-unknown-linux-gnueabihf<br>configure: iPhone SDK only available for arm-apple-darwin hosts, skipping tests<br>
configure: Android SDK only available for arm-linux hosts, skipping tests<br>checking for style of include used by make... GNU<br>checking for gcc... gcc<br>checking whether the C compiler works... yes<br>checking for C compiler default output file name... a.out<br>
checking for suffix of executables... <br>checking whether we are cross compiling... no<br>checking for suffix of object files... o<br>checking whether we are using the GNU C compiler... yes<br>checking whether gcc accepts -g... yes<br>
checking for gcc option to accept ISO C89... none needed<br>checking dependency style of gcc... gcc3<br>checking how to print strings... printf<br>checking for a sed that does not truncate output... /bin/sed<br>checking for grep that handles long lines and -e... /bin/grep<br>
checking for egrep... /bin/grep -E<br>checking for fgrep... /bin/grep -F<br>checking for ld used by gcc... /usr/bin/ld<br>checking if the linker (/usr/bin/ld) is GNU ld... yes<br>checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B<br>
checking the name lister (/usr/bin/nm -B) interface... BSD nm<br>checking whether ln -s works... yes<br>checking the maximum length of command line arguments... 1572864<br>checking whether the shell understands some XSI constructs... yes<br>
checking whether the shell understands &quot;+=&quot;... yes<br>checking how to convert armv6l-unknown-linux-gnueabihf file names to armv6l-unknown-linux-gnueabihf format... func_convert_file_noop<br>checking how to convert armv6l-unknown-linux-gnueabihf file names to toolchain format... func_convert_file_noop<br>
checking for /usr/bin/ld option to reload object files... -r<br>checking for objdump... objdump<br>checking how to recognize dependent libraries... pass_all<br>checking for dlltool... dlltool<br>checking how to associate runtime and link libraries... printf %s\n<br>
checking for ar... ar<br>checking for archiver @FILE support... @<br>checking for strip... strip<br>checking for ranlib... ranlib<br>checking command to parse /usr/bin/nm -B output from gcc object... ok<br>checking for sysroot... no<br>
checking for mt... mt<br>checking if mt is a manifest tool... no<br>checking how to run the C preprocessor... gcc -E<br>checking for ANSI C header files... yes<br>checking for sys/types.h... yes<br>checking for sys/stat.h... yes<br>
checking for stdlib.h... yes<br>checking for string.h... yes<br>checking for memory.h... yes<br>checking for strings.h... yes<br>checking for inttypes.h... yes<br>checking for stdint.h... yes<br>checking for unistd.h... yes<br>
checking for dlfcn.h... yes<br>checking for objdir... .libs<br>checking if gcc supports -fno-rtti -fno-exceptions... no<br>checking for gcc option to produce PIC... -fPIC -DPIC<br>checking if gcc PIC flag -fPIC -DPIC works... yes<br>
checking if gcc static flag -static works... yes<br>checking if gcc supports -c -o file.o... yes<br>checking if gcc supports -c -o file.o... (cached) yes<br>checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes<br>
checking whether -lc should be explicitly linked in... no<br>checking dynamic linker characteristics... GNU/Linux ld.so<br>checking how to hardcode library paths into programs... immediate<br>checking for shl_load... no<br>
checking for shl_load in -ldld... no<br>checking for dlopen... no<br>checking for dlopen in -ldl... yes<br>checking whether a program can dlopen itself... yes<br>checking whether a statically linked program can dlopen itself... no<br>
checking whether stripping libraries is possible... yes<br>checking if libtool supports shared libraries... yes<br>checking whether to build shared libraries... yes<br>checking whether to build static libraries... yes<br>
checking for gcc... (cached) gcc<br>checking whether we are using the GNU C compiler... (cached) yes<br>checking whether gcc accepts -g... (cached) yes<br>checking for gcc option to accept ISO C89... (cached) none needed<br>
checking dependency style of gcc... (cached) gcc3<br>checking for g++... no<br>checking for c++... no<br>checking for gpp... no<br>checking for aCC... no<br>checking for CC... no<br>checking for cxx... no<br>checking for cc++... no<br>
checking for cl.exe... no<br>checking for FCC... no<br>checking for KCC... no<br>checking for RCC... no<br>checking for xlC_r... no<br>checking for xlC... no<br>checking whether we are using the GNU C++ compiler... no<br>
checking whether g++ accepts -g... no<br>checking dependency style of g++... none<br>checking whether make sets $(MAKE)... (cached) yes<br>checking whether ln -s works... yes<br>checking for dlopen in -ldl... (cached) yes<br>
checking for cos in -lm... yes<br>checking for pthread_create in -lpthread... yes<br>checking for ANSI C header files... (cached) yes<br>checking sys/soundcard.h usability... yes<br>checking sys/soundcard.h presence... yes<br>
checking for sys/soundcard.h... yes<br>checking CoreAudio/CoreAudio.h usability... no<br>checking CoreAudio/CoreAudio.h presence... no<br>checking for CoreAudio/CoreAudio.h... no<br>checking for snd_pcm_info in -lasound... yes<br>
checking for size_t... yes<br>checking for working alloca.h... yes<br>checking for alloca... yes<br>checking fcntl.h usability... yes<br>checking fcntl.h presence... yes<br>checking for fcntl.h... yes<br>checking limits.h usability... yes<br>
checking limits.h presence... yes<br>checking for limits.h... yes<br>checking malloc.h usability... yes<br>checking malloc.h presence... yes<br>checking for malloc.h... yes<br>checking netdb.h usability... yes<br>checking netdb.h presence... yes<br>
checking for netdb.h... yes<br>checking netinet/in.h usability... yes<br>checking netinet/in.h presence... yes<br>checking for netinet/in.h... yes<br>checking stddef.h usability... yes<br>checking stddef.h presence... yes<br>
checking for stddef.h... yes<br>checking for stdlib.h... (cached) yes<br>checking for string.h... (cached) yes<br>checking sys/ioctl.h usability... yes<br>checking sys/ioctl.h presence... yes<br>checking for sys/ioctl.h... yes<br>
checking sys/param.h usability... yes<br>checking sys/param.h presence... yes<br>checking for sys/param.h... yes<br>checking sys/socket.h usability... yes<br>checking sys/socket.h presence... yes<br>checking for sys/socket.h... yes<br>
checking for sys/soundcard.h... (cached) yes<br>checking sys/time.h usability... yes<br>checking sys/time.h presence... yes<br>checking for sys/time.h... yes<br>checking sys/timeb.h usability... yes<br>checking sys/timeb.h presence... yes<br>
checking for sys/timeb.h... yes<br>checking for unistd.h... (cached) yes<br>checking for int16_t... yes<br>checking for int32_t... yes<br>checking for off_t... yes<br>checking for pid_t... yes<br>checking for size_t... (cached) yes<br>
checking for error_at_line... yes<br>checking vfork.h usability... no<br>checking vfork.h presence... no<br>checking for vfork.h... no<br>checking for fork... yes<br>checking for vfork... yes<br>checking for working fork... yes<br>
checking for working vfork... (cached) yes<br>checking for stdlib.h... (cached) yes<br>checking for GNU libc compatible malloc... yes<br>checking for stdlib.h... (cached) yes<br>checking for GNU libc compatible realloc... yes<br>
checking return type of signal handlers... void<br>checking for dup2... yes<br>checking for floor... no<br>checking for getcwd... yes<br>checking for gethostbyname... yes<br>checking for gettimeofday... yes<br>checking for memmove... yes<br>
checking for memset... yes<br>checking for pow... no<br>checking for regcomp... yes<br>checking for select... yes<br>checking for socket... yes<br>checking for sqrt... no<br>checking for strchr... yes<br>checking for strerror... yes<br>
checking for strrchr... yes<br>checking for strstr... yes<br>checking for strtol... yes<br>checking for msgfmt... yes<br>configure: creating ./config.status<br>config.status: creating Makefile<br>config.status: creating asio/Makefile<br>
config.status: creating man/Makefile<br>config.status: creating portmidi/Makefile<br>config.status: creating tcl/Makefile<br>config.status: creating po/Makefile<br>config.status: creating src/Makefile<br>config.status: creating extra/Makefile<br>
config.status: creating extra/bonk~/GNUmakefile<br>config.status: creating extra/choice/GNUmakefile<br>config.status: creating extra/expr~/GNUmakefile<br>config.status: creating extra/fiddle~/GNUmakefile<br>config.status: creating extra/loop~/GNUmakefile<br>
config.status: creating extra/lrshift~/GNUmakefile<br>config.status: creating extra/pd~/GNUmakefile<br>config.status: creating extra/pique/GNUmakefile<br>config.status: creating extra/sigmund~/GNUmakefile<br>config.status: creating extra/stdout/GNUmakefile<br>
config.status: creating pd.pc<br>config.status: executing depfiles commands<br>config.status: executing libtool commands<br>=== configuring in portaudio (/root/pure-data/portaudio)<br>configure: running /bin/bash ./configure --disable-option-checking &#39;--prefix=/usr/local&#39;  --cache-file=/dev/null --srcdir=.<br>
checking for a thread-safe mkdir -p... /bin/mkdir -p<br>checking build system type... armv6l-unknown-linux-gnueabihf<br>checking host system type... armv6l-unknown-linux-gnueabihf<br>checking target system type... armv6l-unknown-linux-gnueabihf<br>
checking for gcc... gcc<br>checking whether the C compiler works... yes<br>checking for C compiler default output file name... a.out<br>checking for suffix of executables... <br>checking whether we are cross compiling... no<br>
checking for suffix of object files... o<br>checking whether we are using the GNU C compiler... yes<br>checking whether gcc accepts -g... yes<br>checking for gcc option to accept ISO C89... none needed<br>checking how to print strings... printf<br>
checking for a sed that does not truncate output... /bin/sed<br>checking for grep that handles long lines and -e... /bin/grep<br>checking for egrep... /bin/grep -E<br>checking for fgrep... /bin/grep -F<br>checking for ld used by gcc... /usr/bin/ld<br>
checking if the linker (/usr/bin/ld) is GNU ld... yes<br>checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B<br>checking the name lister (/usr/bin/nm -B) interface... BSD nm<br>checking whether ln -s works... yes<br>
checking the maximum length of command line arguments... 1572864<br>checking whether the shell understands some XSI constructs... yes<br>checking whether the shell understands &quot;+=&quot;... yes<br>checking how to convert armv6l-unknown-linux-gnueabihf file names to armv6l-unknown-linux-gnueabihf format... func_convert_file_noop<br>
checking how to convert armv6l-unknown-linux-gnueabihf file names to toolchain format... func_convert_file_noop<br>checking for /usr/bin/ld option to reload object files... -r<br>checking for objdump... objdump<br>checking how to recognize dependent libraries... pass_all<br>
checking for dlltool... dlltool<br>checking how to associate runtime and link libraries... printf %s\n<br>checking for ar... ar<br>checking for archiver @FILE support... @<br>checking for strip... strip<br>checking for ranlib... ranlib<br>
checking for gawk... no<br>checking for mawk... mawk<br>checking command to parse /usr/bin/nm -B output from gcc object... ok<br>checking for sysroot... no<br>checking for mt... mt<br>checking if mt is a manifest tool... no<br>
checking how to run the C preprocessor... gcc -E<br>checking for ANSI C header files... yes<br>checking for sys/types.h... yes<br>checking for sys/stat.h... yes<br>checking for stdlib.h... yes<br>checking for string.h... yes<br>
checking for memory.h... yes<br>checking for strings.h... yes<br>checking for inttypes.h... yes<br>checking for stdint.h... yes<br>checking for unistd.h... yes<br>checking for dlfcn.h... yes<br>checking for objdir... .libs<br>
checking if gcc supports -fno-rtti -fno-exceptions... no<br>checking for gcc option to produce PIC... -fPIC -DPIC<br>checking if gcc PIC flag -fPIC -DPIC works... yes<br>checking if gcc static flag -static works... yes<br>
checking if gcc supports -c -o file.o... yes<br>checking if gcc supports -c -o file.o... (cached) yes<br>checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes<br>checking whether -lc should be explicitly linked in... no<br>
checking dynamic linker characteristics... GNU/Linux ld.so<br>checking how to hardcode library paths into programs... immediate<br>checking whether stripping libraries is possible... yes<br>checking if libtool supports shared libraries... yes<br>
checking whether to build shared libraries... yes<br>checking whether to build static libraries... yes<br>checking for a BSD-compatible install... /usr/bin/install -c<br>checking whether ln -s works... yes<br>checking for ar... /usr/bin/ar<br>
checking whether byte ordering is bigendian... no<br>checking for snd_pcm_open in -lasound... yes<br>checking for HPI_SubSysCreate in -lhpi... no<br>checking sys/soundcard.h usability... yes<br>checking sys/soundcard.h presence... yes<br>
checking for sys/soundcard.h... yes<br>checking linux/soundcard.h usability... yes<br>checking linux/soundcard.h presence... yes<br>checking for linux/soundcard.h... yes<br>checking machine/soundcard.h usability... no<br>
checking machine/soundcard.h presence... no<br>checking for machine/soundcard.h... no<br>checking for _oss_ioctl in -lossaudio... no<br>checking for pkg-config... /usr/bin/pkg-config<br>checking pkg-config is at least version 0.9.0... yes<br>
checking for JACK... no<br>checking size of short... 2<br>checking size of int... 4<br>checking size of long... 4<br>checking for clock_gettime in -lrt... yes<br>checking for clock_gettime... yes<br>checking for nanosleep... yes<br>
checking for pthread_create in -lpthread... yes<br>configure: creating ./config.status<br>config.status: creating Makefile<br>config.status: executing libtool commands<br><br>Configuration summary:<br><br>  Target ...................... armv6l-unknown-linux-gnueabihf<br>
  C++ bindings ................ no<br>  Debug output ................ no<br><br>  ALSA ........................ yes<br>  ASIHPI ...................... no<br><br>  OSS ......................... yes<br>  JACK ........................ no<br>
<br>root@BitChime:~/pure-data# make<br>make -C po all<br>make[1]: Entering directory `/root/pure-data/po&#39;<br>make[1]: Nothing to be done for `all&#39;.<br>make[1]: Leaving directory `/root/pure-data/po&#39;<br>make  all-recursive<br>
make[1]: Entering directory `/root/pure-data&#39;<br>Making all in portaudio<br>make[2]: Entering directory `/root/pure-data/portaudio&#39;<br>if test -n &quot;&quot; ; then for dir in &quot;&quot;; do make -C $dir all; done ; fi<br>
make[2]: Leaving directory `/root/pure-data/portaudio&#39;<br>Making all in src<br>make[2]: Entering directory `/root/pure-data/src&#39;<br>/bin/bash ../libtool --tag=CC   --mode=link gcc -DPD -DINSTALL_PREFIX=\&quot;/usr/local\&quot; -DUSEAPI_ALSA  -DUSEAPI_OSS -DUSEAPI_PORTAUDIO  -I../portaudio/include    -O6 -funroll-loops -fomit-frame-pointer  -export-dynac -lm  -o pd pd-g_canvas.o pd-g_graph.o pd-g_text.o pd-g_rtext.o pd-g_array.o pd-g_template.o pd-g_io.o pd-g_scalar.o pd-g_traversal.o pd-g_guiconnect.o pd-g_readwrite.o pd-g_editor.o pd-g_all_guis.o pd-g_bang.o -g_hdial.o pd-g_hslider.o pd-g_mycanvas.o pd-g_numbox.o pd-g_toggle.o pd-g_vdial.o pd-g_vslider.o pd-g_vumeter.o pd-m_pd.o pd-m_class.o pd-m_obj.o pd-m_atom.o pd-m_memory.o pd-m_binbuf.o pd-m_conf.o pd-m_glob.o pm_sched.o pd-s_main.o pd-s_inter.o pd-s_file.o pd-s_print.o pd-s_loader.o pd-s_path.o pd-s_entry.o pd-s_audio.o pd-s_midi.o pd-s_utf8.o pd-d_ugen.o pd-d_ctl.o pd-d_arithmetic.o pd-d_osc.o pd-d_filter.o pd-d_dac.od-d_misc.o pd-d_math.o pd-d_fft.o pd-d_array.o pd-d_global.o pd-d_delay.o pd-d_resample.o pd-x_arithmetic.o pd-x_connective.o pd-x_interface.o pd-x_midi.o pd-x_misc.o pd-x_time.o pd-x_acoustics.o pd-x_net.o pd-x_ist.o pd-x_gui.o pd-x_list.o pd-d_soundfile.o pd-s_audio_alsa.o pd-s_audio_alsamm.o pd-s_midi_alsa.o  pd-d_fft_mayer.o pd-d_fftroutine.o  pd-s_audio_oss.o pd-s_midi_oss.o pd-s_audio_pa.o pd-s_audio_paring.o     -sound  ../portaudio/lib/<a href="http://libportaudio.la">libportaudio.la</a>   -lpthread -ldl    <br>
libtool: link: gcc -DPD -DINSTALL_PREFIX=\&quot;/usr/local\&quot; -DUSEAPI_ALSA -DUSEAPI_OSS -DUSEAPI_PORTAUDIO -I../portaudio/include -O6 -funroll-loops -fomit-frame-pointer -o .libs/pd pd-g_canvas.o pd-g_graph.o pd-g_texo pd-g_rtext.o pd-g_array.o pd-g_template.o pd-g_io.o pd-g_scalar.o pd-g_traversal.o pd-g_guiconnect.o pd-g_readwrite.o pd-g_editor.o pd-g_all_guis.o pd-g_bang.o pd-g_hdial.o pd-g_hslider.o pd-g_mycanvas.o pd-g_nbox.o pd-g_toggle.o pd-g_vdial.o pd-g_vslider.o pd-g_vumeter.o pd-m_pd.o pd-m_class.o pd-m_obj.o pd-m_atom.o pd-m_memory.o pd-m_binbuf.o pd-m_conf.o pd-m_glob.o pd-m_sched.o pd-s_main.o pd-s_inter.o pd-s_file.o ps_print.o pd-s_loader.o pd-s_path.o pd-s_entry.o pd-s_audio.o pd-s_midi.o pd-s_utf8.o pd-d_ugen.o pd-d_ctl.o pd-d_arithmetic.o pd-d_osc.o pd-d_filter.o pd-d_dac.o pd-d_misc.o pd-d_math.o pd-d_fft.o pd-d_array.o pd_global.o pd-d_delay.o pd-d_resample.o pd-x_arithmetic.o pd-x_connective.o pd-x_interface.o pd-x_midi.o pd-x_misc.o pd-x_time.o pd-x_acoustics.o pd-x_net.o pd-x_qlist.o pd-x_gui.o pd-x_list.o pd-d_soundfile.o pd_audio_alsa.o pd-s_audio_alsamm.o pd-s_midi_alsa.o pd-d_fft_mayer.o pd-d_fftroutine.o pd-s_audio_oss.o pd-s_midi_oss.o pd-s_audio_pa.o pd-s_audio_paring.o -Wl,--export-dynamic  -lm -lasound ../portaudio/lib/.libsibportaudio.so -lpthread -ldl<br>
pd-g_canvas.o: In function `pd_checkglist&#39;:<br>g_canvas.c:(.text+0x511c): undefined reference to `array_define_class&#39;<br>pd-g_text.o: In function `text_save&#39;:<br>g_text.c:(.text+0x3074): undefined reference to `canvas_istable&#39;<br>
pd-m_conf.o: In function `conf_init&#39;:<br>m_conf.c:(.text+0x60): undefined reference to `x_array_setup&#39;<br>collect2: ld returned 1 exit status<br>make[2]: *** [pd] Error 1<br>make[2]: Leaving directory `/root/pure-data/src&#39;<br>
make[1]: *** [all-recursive] Error 1<br>make[1]: Leaving directory `/root/pure-data&#39;<br>make: *** [all] Error 2<br>root@BitChime:~/pure-data# ^C<br>root@BitChime:~/pure-data# make<br><div><br></div><div>This is about the fifth time I&#39;ve tried to build Pd from source on the Pi and is farther than I&#39;ve got before - but not quite far enough.<br>
</div><div><div><pre><br>Any thoughts anyone?<br><br></pre><pre>Regards,<br><br>Julian <br></pre><pre><br></pre><br></div></div></div></div></div>