[Fluxus] compiling on Debian without recompiling racket
Claude Heiland-Allen
claude at goto10.org
Thu Jun 7 13:02:34 PDT 2012
Hi Gabor,
On 07/06/12 13:21, gabor papp wrote:
> just curious, why do you need to build fluxus with static modules? it's
> much trickier and not frequently used.
I had a link error with racket that said I needed to recompile something
within racket with -fPIC to make useable from a shared object, and I
thought static compile of fluxus would be easier than rebuilding racket
with -fPIC added somewhere.
--8<--
$ scons RacketPrefix=/usr Prefix=${HOME}/opt
...
g++ -o addons/video/fluxus-video_ss.so -rdynamic -pthread -shared
addons/video/src/Video.os addons/video/src/FluxusVideo.os
addons/video/src/ofVideoPlayer.os addons/video/src/ofVideoGrabber.os
/usr/lib/racket/mzdyn3m.o addons/video/src/ofUCUtils.os
-L/usr/lib/racket -L/usr/lib -L/usr/lib -Llibfluxus -lm -lpthread -ldl
-ljpeg -ltiff -lfreetype -lz -lbz2 -lpng -lode -lsndfile -lfftw3 -llo
-lGLEW -lracket3m -ljack -lGL -lGLU -lglut -lasound -lopenal
-lgstvideo-0.10 -lunicap -lavformat -lswscale -lgstapp-0.10
-lgstbase-0.10 -lgstreamer-0.10 -lgobject-2.0 -lgmodule-2.0
-lgthread-2.0 -lrt -lxml2 -lglib-2.0
/usr/bin/ld: /usr/lib/libracket3m.a(salloc.o): relocation
R_X86_64_TPOFF32 against `scheme_thread_locals' can not be used when
making a shared object; recompile with -fPIC
/usr/lib/libracket3m.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
scons: *** [addons/video/fluxus-video_ss.so] Error 1
scons: building terminated because of errors.
$ apt-cache policy racket
racket:
Installed: 5.2.1+dfsg1-5
Candidate: 5.2.1+dfsg1-5
Version table:
*** 5.2.1+dfsg1-5 0
500 http://ftp.uk.debian.org/debian/ wheezy/main amd64 Packages
100 /var/lib/dpkg/status
--8<--
> i applied the static build patches to master. these were forgotten when
> we moved from plt scheme to racket.
Great/
>> to figure out then gave up as both -audio and -openal modules define a
>> same-named symbol 'Audio' with different types):
> would changing one of the 'Audio' symbol names solve this problem?
Probably! Or even putting each symbol in a different C++ namespace
might do the trick?
Claude
More information about the Fluxus
mailing list