[PD-dev] trying to compile Pd on OS X (10.11)

cjniven cjniven at gmail.com
Sun May 7 02:58:08 CEST 2017


It’s working now — my Jackmp framework was actually a incomplete build, I had to change a few settings in the Xcode project and re-build for os x 10.12. 

After building the new framework, building pd completed successfully.

Cheers,

-c

> On May 6, 2017, at 11:55 AM, cjniven <cjniven at gmail.com> wrote:
> 
> Thanks for this fix, its working now, however I’m stuck again at the same stage that Roman was before (linking Jackmp):
> 
> /bin/sh ../libtool  --tag=CXX   --mode=link g++  -g -O2 -weak_framework Jackmp    -L/opt/local/lib -L/usr/local/lib  -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_jack.o   pd-s_audio_pa.o pd-s_audio_paring.o pd-s_midi_pm.o    pd-d_fft_fftsg.o   ../portaudio/libportaudio.la   ../portmidi/libportmidi.la  -lpthread -ldl  -framework CoreAudio -framework CoreMIDI -framework AudioUnit -framework AudioToolbox -framework Carbon -framework CoreFoundation -framework Carbon -ldl -lm -lpthread
> libtool: link: g++ -g -O2 -weak_framework Jackmp -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_jack.o pd-s_audio_pa.o pd-s_audio_paring.o pd-s_midi_pm.o pd-d_fft_fftsg.o -Wl,-bind_at_load  -L/opt/local/lib -L/usr/local/lib ../portaudio/.libs/libportaudio.a ../portmidi/.libs/libportmidi.a -framework CoreAudio -framework CoreMIDI -framework AudioUnit -framework AudioToolbox -framework Carbon -framework CoreFoundation -ldl -lm -lpthread
> ld: framework not found Jackmp
> clang: error: linker command failed with exit code 1 (use -v to see invocation)
> make: *** [pd] Error 1
> 
> 
> I have Jackmp.framework installed in /Library/Frameworks, and building jack2 worked fine, but somehow it’s still not being found. 
> Do I need to add a link to Jackmp.framework in /usr/local/lib (where libjack is sitting currently)? 
> 
> Thanks,
> -c
> 
> 
>> On May 5, 2017, at 10:32 PM, Miller Puckette <msp at ucsd.edu> wrote:
>> 
>> Here's teh fix...  in m_pd.h, it should be:
>> 
>> #if defined(PDTHREADS) && defined(PDINSTANCE)
>> #define PERTHREAD __thread
>> #else
>> #define PERTHREAD
>> #endif
>> 
>> cheers
>> M
>> 
>> On Fri, May 05, 2017 at 07:23:57PM -0400, cjniven wrote:
>>> Alright, I still don’t see it on my end but I’ll wait for this one.
>>> 
>>> Thanks,
>>> 
>>> -c
>>> 
>>>> On May 5, 2017, at 5:47 PM, Miller Puckette <msp at ucsd.edu> wrote:
>>>> 
>>>> Yeah, I just now uploaded it.... e0aff65977890fc44b69136ec78859bb694ce476
>>>> cheers
>>>> M
>>>> 
>>>> On Fri, May 05, 2017 at 05:45:37PM -0400, cjniven wrote:
>>>>> Hi Miller,
>>>>> 
>>>>> Unfortunately, I checked this version out an hour or so ago and still got this error. 
>>>>> 
>>>>> -c
>>>>> 
>>>>> 
>>>>>> On May 5, 2017, at 5:42 PM, Miller Puckette <msp at ucsd.edu> wrote:
>>>>>> 
>>>>>> Sorry - this should now be fixed in the git repo.
>>>>>> 
>>>>>> Miller
>>>>>> 
>>>>>> On Fri, May 05, 2017 at 05:21:45PM -0400, cjniven wrote:
>>>>>>> I was able to build jack2 properly and pd was able to find it, but I received another error when running make (with or without the ‘-j’ flag)
>>>>>>> 
>>>>>>> Making all in src
>>>>>>> gcc -DPACKAGE_NAME=\"pd\" -DPACKAGE_TARNAME=\"pd\" -DPACKAGE_VERSION=\"0.47.1\" -DPACKAGE_STRING=\"pd\ 0.47.1\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"pd\" -DVERSION=\"0.47.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DSTDC_HEADERS=1 -DHAVE_FCNTL_H=1 -DHAVE_LIMITS_H=1 -DHAVE_NETDB_H=1 -DHAVE_NETINET_IN_H=1 -DHAVE_STDDEF_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_PARAM_H=1 -DHAVE_SYS_SOCKET_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_SYS_TIMEB_H=1 -DHAVE_UNISTD_H=1 -DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1 -DHAVE_FORK=1 -DHAVE_VFORK=1 -DHAVE_WORKING_VFORK=1 -DHAVE_WORKING_FORK=1 -DHAVE_STDLIB_H=1 -DHAVE_MALLOC=1 -DHAVE_STDLIB_H=1 -DHAVE_REALLOC=1 -DRETSIGTYPE=void -DHAVE_DUP2=1 -DHAVE_FLOOR=1 -DHAVE_GETCWD=1 -DHAVE_GETHOSTBYNAME=1 -DHAVE_GETTIMEOFDAY=1 -DHAVE_MEMMOVE=1 -DHAVE_MEMSET=1 -DHAVE_POW=1 -DHAVE_REGCOMP=1 -DHAVE_SELECT=1 -DHAVE_SOCKET=1 -DHAVE_SQRT=1 -DHAVE_STRCHR=1 -DHAVE_STRERROR=1 -DHAVE_STRRCHR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_LIBDL=1 -I.  -I/opt/local/include  -I../portaudio/portaudio/include -I../portmidi/portmidi/pm_common -I../portmidi/portmidi/porttime  -DPD -DINSTALL_PREFIX=\"/usr/local\" -DPD_INTERNAL  -DUSEAPI_JACK -DJACK_XRUN   -DUSEAPI_PORTAUDIO  -DMACOSX  -mmacosx-version-min=10.6 -g -O2 -ffast-math -funroll-loops -fomit-frame-pointer -MT pd-d_ugen.o -MD -MP -MF .deps/pd-d_ugen.Tpo -c -o pd-d_ugen.o `test -f 'd_ugen.c' || echo './'`d_ugen.c
>>>>>>> d_ugen.c:580:8: error: thread-local storage is not supported for the current target
>>>>>>> static PERTHREAD t_dspcontext *ugen_currentcontext;
>>>>>>>    ^
>>>>>>> ./m_pd.h:839:19: note: expanded from macro 'PERTHREAD'
>>>>>>> #define PERTHREAD __thread
>>>>>>>               ^
>>>>>>> 1 error generated.
>>>>>>> 
>>>>>>> 
>>>>>>> Can anyone tell me what’s going on here?
>>>>>>> 
>>>>>>> Thanks,
>>>>>>> 
>>>>>>> -c
>>>>>>> 
>>>>>>>> On May 5, 2017, at 4:15 PM, Roman Haefeli <reduzent at gmail.com> wrote:
>>>>>>>> 
>>>>>>>> On Fre, 2017-05-05 at 09:35 -0400, cjniven wrote:
>>>>>>>>> What version of jack did you end up installing? I’m having the same
>>>>>>>>> problem myself on OS X 10.12.
>>>>>>>> 
>>>>>>>> 
>>>>>>>> Pd works fine with jack now after I installed the JackOSX package from
>>>>>>>> IOhannes' second link. The package apparently installs (along a lot of
>>>>>>>> other stuff) something called Jackmp.framework, which is what Pd is
>>>>>>>> looking for. Also, it installs a jackd binary to /usr/local/bin.
>>>>>>>> Interestingly, once the framework is installed, I can replace the jackd
>>>>>>>> binary by the one provided by homebrew or by a self-compiled one from
>>>>>>>> the jack2 [1] repository and Pd (and other software) seem still to work
>>>>>>>> fine. 
>>>>>>>> 
>>>>>>>> Since it doesn't seem to be a technical necessity, I believe it would
>>>>>>>> be good if Pd would also connect to a jackd that comes without
>>>>>>>> Jackmp.framework, as Dan suggested.
>>>>>>>> 
>>>>>>>> Roman
>>>>>>>> 
>>>>>>>> [1] https://github.com/jackaudio/jack2
>>>>>>> 
>>>>>>> 
>>>>>>> _______________________________________________
>>>>>>> Pd-dev mailing list
>>>>>>> Pd-dev at lists.iem.at
>>>>>>> https://lists.puredata.info/listinfo/pd-dev
>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> Pd-dev mailing list
>>>>> Pd-dev at lists.iem.at
>>>>> https://lists.puredata.info/listinfo/pd-dev
>>> 
> 




More information about the Pd-dev mailing list