[PD] Compiling a flext external as a static library to be used by libpd in iOS

Orestis Papadopoulos orjpap at gmail.com
Tue Jul 11 00:51:56 CEST 2017


Hi Everyone,

I’m looking to compile an external that’s using the flext 
<https://grrrr.org/research/software/flext/> development layer. It’s 
called gendy <https://github.com/ssfrr/gendyflext>

I need to compile it with a target architecture of armv7 and to compile 
it as a static library.

The only thing I was able to do so far was to compile it as a dynamic 
library for macOS. Everything works great in that executable.

So far I’m pretty much familiar with how flext builds externals and I 
have managed to try some different things by editing its 
buildsys/config- files. But when I change the arch to armv7 my 
compilation fails.

|/usr/include/sys/cdefs.h:707:2: error: Unsupported architecture|

My config-mac-pd-gcc looks like this:

|# where is the PD installation including source code?
#  (this should point to the main folder, which has a "src" (PD Vanilla) or  "include" (PD extended) subfolder)
PDPATH=/Applications/Pd-0.47-1.app/Contents/Resources

#  where is the PD executable?
PDBIN=$(PDPATH)/bin/pd

###############################################################

#  prefix for flext installation
# headers are in  $(FLEXTPREFIX)/include/flext
# libraries are in $(FLEXTPREFIX)/lib
#  build system is in $(FLEXTPREFIX)/lib/flext

FLEXTPREFIX=/usr/local

###############################################################

#  where should the external be built?
OUTPATH=pd-darwin

# where  should the external be installed?
INSTPATH=$(PDPATH)/extra

###############################################################

#  STK (synthesis tool kit) support
#  http://ccrma.stanford.edu/software/stk

# where to find the STK  header files (e.g. stk.h)
#STK_INC=/usr/local/include/stk

#  where to find the STK library (normally libstk.a)
# (comment out  STK_LIB if you don't use STK)
#STK_LIB=/usr/local/lib/libstk.a

###############################################################

#  SndObj support
# http://music.nuim.ie//musictec/SndObj

#  where to find the SndObj header files (e.g. sndobj.h)
#SNDOBJ_INC=/usr/local/include/sndobj

#  where to find the SndObj library (normally libsndobj.a)
# (comment  out SNDOBJ_LIB if you don't use SndObj)
#SNDOBJ_LIB=/usr/local/lib/libsndobj.a

###############################################################

#  make flags (e.g. use multiprocessor)
MFLAGS=-j 2

# user  defined compiler flags
UFLAGS +=

# user defined linker flags
LDFLAGS  +=

# user defined optimization flags
OFLAGS +=

#  user defined debugging flags
DFLAGS +=

# architecture-specific  flags (optional)
UFLAGS_ppc += -faltivec
OFLAGS_ppc +=
DFLAGS_ppc  +=

UFLAGS_i386 +=
OFLAGS_i386 +=
DFLAGS_i386 +=

UFLAGS_x86_64  +=
OFLAGS_x86_64 +=
DFLAGS_x86_64 +=

# cross-compilation  (optional)
ARCH=armv7 # ppc ppc64

# SDK for 10.6
#OSXSDK=/Developer/SDKs/MacOSX10.6u.sdk
|

I would appreciate it if anyone who’s done something similar before can 
help!

Thanks,
Orestis

​
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20170711/46a28c84/attachment.html>


More information about the Pd-list mailing list