[flext] problem with static linking flext on Linux

Thomas Grill gr at grrrr.org
Sun Apr 7 12:58:28 CEST 2013


Hi Ico,
i can't really remember what i wrote on the fluid~ topic. I guess that  
was years ago and the context might have changed in the meantime.
I think that your case should be easy to resolve.

First, flext libraries libflext-pd_s.a or libflext-pd_t.a are always  
static, while libflext-pd.dylib is the shared version.
Consequently linking with the -lflext-pd_s option will always be static.

In your console printout the libflext-pd_s.a is not found - most  
probably because it is not installed in any of the standard system  
locations (like /usr/local/lib).
Is there any reason why you haven't installed them? This is normally  
done by calling the flext build system with  "sudo sh build.sh pd gcc  
install" from the flext folder.

hope this helps! all the best,
gr~~~

--
Thomas Grill
http://grrrr.org



Am 07.04.2013 um 08:21 schrieb Ivica Ico Bukvic:

> Hey Thomas,
>
> Hope all is well. I followed some of your previous posts on this  
> topic that pertain to OSX and tried adjusting project.txt file for a  
> custom build of fluid~ external for pd but am having no luck in  
> suppressing -lflext-pd_* being tacked at the end of the build  
> process. Below are my packa.txt file and the output:
>
> NAME=fluid~
> PDPATH=../../../pd
> LIBS= ../../grill/trunk/flext/libbuild/lib/libflext-pd_s.a*
> CFLAGS+=-I../../grill/trunk/flext/source/
> BUILDDIR=build
> SRCDIR=fluid
> SRCS=main.cpp
>
> (I am trying to make the build as automated as possible, hence the  
> use of wildcard)
>
> The output is as follows:
>
>
> ico at zen:~/Downloads/PureData/pure-data/externals/footils/fluid 
> $ ../../grill/trunk/flext/build.sh pd gcc build
> make -f ../../grill/trunk/flext/buildsys/gnumake-sub.mak   
> PLATFORM=lnx RTSYS=pd COMPILER=gcc BUILDPATH=../../grill/trunk/flext/ 
> buildsys/ PKGINFO=package.txt BUILDCLASS=ext USRCONFIG=config.txt  
> USRMAKE=build/gnumake-lnx-gcc.inc TARGETMODE=release  
> TARGETTYPE=single _build_
> make[1]: Entering directory `/home/ico/Downloads/PureData/pure-data/ 
> externals/footils/fluid'
> g++ -pthread -shared  -Wl,-S -L../../../pd/bin -L./libbuild/lib -o  
> pd-linux/release-single/fluid~.pd_linux   pd-linux/release-single/ 
> main.opp  ../../grill/trunk/flext/libbuild/lib/libflext-pd_s.a* - 
> lfluidsynth -lflext-pd_s
> /usr/bin/ld: cannot find -lflext-pd_s
> collect2: ld returned 1 exit status
> make[1]: *** [pd-linux/release-single/fluid~.pd_linux] Error 1
> make[1]: Leaving directory `/home/ico/Downloads/PureData/pure-data/ 
> externals/footils/fluid'
> make: *** [build-release-single] Error 2
>
> If I manually run the last line without lflext-pd_s, the external  
> builds properly and works just fine. Any pointers as to how I could  
> suppress the automatic dynamic linking done by flext build system?
>
> Also, any suggestions how to make static linking reflect the kind of  
> build I wish to use (single/multi/etc.)?
>
> Please advise.
>
> -- 
> Ivica Ico Bukvic, D.M.A
> Composition, Music Technology
> Director, DISIS Interactive Sound & Intermedia Studio
> Director, L2Ork Linux Laptop Orchestra
> Head, ICAT IMPACT Studio
> Virginia Tech
> Department of Music
> Blacksburg, VA 24061-0240
> (540) 231-6139
> (540) 231-5034 (fax)
> disis.music.vt.edu
> l2ork.music.vt.edu
> ico.bukvic.net

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://grrrr.org/pipermail/flext/attachments/20130407/e9879df5/attachment.htm>


More information about the flext mailing list