Hi!
First of all, congrats for the 0.48 release and thanks to everyone involved in Pd development! I've already successfully compiled previous versions of Pd in the past using:
./autogen.sh
./configure
make
(by the way I'm building for Linux Mint 18.2 64bits) but this time I set some options, namely:
./configure --disable-locales --enable-fftw --enable-jack
--disable-portaudio --disable-oss
Compilation stops with
libtool: link: g++ -g -O2 -o pd pd-d_arithmetic.o pd-d_array.o
pd-d_ctl.o pd-d_dac.o pd-d_delay.o pd-d_fft.o pd-d_filter.o
pd-d_global.o pd-d_math.o pd-d_misc.o pd-d_osc.o pd-d_resample.o
pd-d_soundfile.o pd-d_ugen.o pd-g_all_guis.o pd-g_array.o pd-g_bang.o
pd-g_canvas.o pd-g_clone.o pd-g_editor.o pd-g_graph.o pd-g_guiconnect.o
pd-g_hdial.o pd-g_hslider.o pd-g_io.o pd-g_mycanvas.o pd-g_numbox.o
pd-g_readwrite.o pd-g_rtext.o pd-g_scalar.o pd-g_template.o pd-g_text.o
pd-g_toggle.o pd-g_traversal.o pd-g_vdial.o pd-g_vslider.o
pd-g_vumeter.o pd-m_atom.o pd-m_binbuf.o pd-m_class.o pd-m_conf.o
pd-m_glob.o pd-m_memory.o pd-m_obj.o pd-m_pd.o pd-m_sched.o pd-s_audio.o
pd-s_entry.o pd-s_file.o pd-s_inter.o pd-s_loader.o pd-s_main.o
pd-s_midi.o pd-s_path.o pd-s_print.o pd-s_utf8.o pd-x_acoustics.o
pd-x_arithmetic.o pd-x_array.o pd-x_connective.o pd-x_gui.o
pd-x_interface.o pd-x_list.o pd-x_midi.o pd-x_misc.o pd-x_net.o
pd-x_scalar.o pd-x_text.o pd-x_time.o pd-x_vexp.o pd-x_vexp_fun.o
pd-x_vexp_if.o pd-s_audio_alsa.o pd-s_audio_alsamm.o pd-s_midi_alsa.o
pd-s_audio_jack.o pd-d_fft_fftw.o -Wl,--export-dynamic -lm -lasound
-ljack -lpthread -ldl -lrt -lfftw3f
pd-s_file.o: In function glob_loadpreferences': /home/yoann/Sources/pd-0.48-0/src/s_file.c:624: undefined reference to
sys_close_midi'
pd-s_inter.o: In function glob_quit': /home/yoann/Sources/pd-0.48-0/src/s_inter.c:1378: undefined reference to
sys_close_midi'
pd-s_midi.o: In function sys_putnext': /home/yoann/Sources/pd-0.48-0/src/s_midi.c:118: undefined reference to
sys_putmidibyte'
/home/yoann/Sources/pd-0.48-0/src/s_midi.c:119: undefined reference to
sys_putmidimess' /home/yoann/Sources/pd-0.48-0/src/s_midi.c:118: undefined reference to
sys_putmidibyte'
/home/yoann/Sources/pd-0.48-0/src/s_midi.c:119: undefined reference to
sys_putmidimess' pd-s_midi.o: In function
sys_get_midi_devs':
/home/yoann/Sources/pd-0.48-0/src/s_midi.c:813: undefined reference to
midi_getdevs' /home/yoann/Sources/pd-0.48-0/src/s_midi.c:813: undefined reference to
midi_getdevs'
/home/yoann/Sources/pd-0.48-0/src/s_midi.c:813: undefined reference to
midi_getdevs' /home/yoann/Sources/pd-0.48-0/src/s_midi.c:813: undefined reference to
midi_getdevs'
/home/yoann/Sources/pd-0.48-0/src/s_midi.c:813: undefined reference to
midi_getdevs' pd-s_midi.o: In function
sys_putnext':
/home/yoann/Sources/pd-0.48-0/src/s_midi.c:118: undefined reference to
sys_putmidibyte' /home/yoann/Sources/pd-0.48-0/src/s_midi.c:119: undefined reference to
sys_putmidimess'
pd-s_midi.o: In function sys_pollmidiqueue': /home/yoann/Sources/pd-0.48-0/src/s_midi.c:479: undefined reference to
sys_poll_midi'
pd-s_midi.o: In function sys_putnext': /home/yoann/Sources/pd-0.48-0/src/s_midi.c:118: undefined reference to
sys_putmidibyte'
/home/yoann/Sources/pd-0.48-0/src/s_midi.c:119: undefined reference to
sys_putmidimess' pd-s_midi.o: In function
sys_open_midi':
/home/yoann/Sources/pd-0.48-0/src/s_midi.c:582: undefined reference to
sys_do_open_midi' pd-s_midi.o: In function
sys_get_midi_devs':
/home/yoann/Sources/pd-0.48-0/src/s_midi.c:813: undefined reference to
midi_getdevs' pd-s_midi.o: In function
glob_midi_setapi':
/home/yoann/Sources/pd-0.48-0/src/s_midi.c:646: undefined reference to
sys_close_midi' pd-s_midi.o: In function
glob_midi_dialog':
/home/yoann/Sources/pd-0.48-0/src/s_midi.c:796: undefined reference to
sys_close_midi' pd-s_midi.o: In function
sys_get_midi_devs':
/home/yoann/Sources/pd-0.48-0/src/s_midi.c:813: undefined reference to
midi_getdevs' /home/yoann/Sources/pd-0.48-0/src/s_midi.c:813: undefined reference to
midi_getdevs'
pd-s_midi.o: In function outmidi_byte': /home/yoann/Sources/pd-0.48-0/src/s_midi.c:250: undefined reference to
sys_putmidibyte'
pd-s_midi.o: In function sys_get_midi_devs': /home/yoann/Sources/pd-0.48-0/src/s_midi.c:813: undefined reference to
midi_getdevs'
collect2: error: ld returned 1 exit status
This happens only when I try to disable OSS (that I don't need as I use Alsa and Jack). After reading src/makefile.gnu, I could however compile with OSS disabled by using:
make -f makefile.gnu JACK=true PA=false OSS=false
But doing this compiles Pd without working Jack support
API 5 not supported, reverting to 1 (ALSA)
Anyway I simply went with OSS enabled but wanted to give some feedback on this behavior.
While browsing makefile.gnu, I saw
# You can add compiler flags using CODECFLAGS, MORECFLAGS and/or MORELDFLAGS. # For example, you can turn off optimizing and enable debugging: CODECFLAGS=-g # or *compile with native double precision: MORECFLAGS=-DPD_FLOATSIZE=64*
Is this flag enabling double precision as explained here -> http://www.katjaas.nl/doubleprecision/doubleprecision.html ? If yes, is it supported/experimental/deprecated? If no, what is the current state on this topic?
In a more general way, what are the best compilation options to get the most out of Pd on one side, and my computer on the other side?
Thanks and happy patching! Yoann