[Gridflow-dev] [PD-dev] ATI + GridFlow + Gem + C++ + Linux = BOOM (fwd)
Mathieu Bouchard
matju at artengine.ca
Sun Aug 23 14:38:20 EDT 2009
fyi
---------- Forwarded message ----------
Date: Sun, 23 Aug 2009 14:30:45 -0400 (EDT)
From: Mathieu Bouchard <matju at artengine.ca>
To: Hans-Christoph Steiner <hans at eds.org>, pd-dev at iem.at
Subject: [PD-dev] ATI + GridFlow + Gem + C++ + Linux = BOOM
Hi Hans,
Could we please get Pd-extended to link the "pd" executable to libstdc++.so ?
Afaik, this is a fix for a possibly wide category of problems but that is
currently only "known" to affect GridFlow when loading GEM while the driver
named "fglrx" is in use (ATI video).
AFAIK, this problem affects any lib that uses the "throw" keyword in C++ code,
whenever the ATI driver is loaded _before_ the standard library of C++, in
which case it will provide its own version of a portion of the C++ standard
library, which is incompatible (sort of like the DLL Hell on Windows). This
driver is typically loaded by anything linked to OpenGL directly or indirectly
(usually GEM, but could also be 3DP, OpenSceneGraph, etc)
So, what I'm asking, is to link Pd itself to a library that it doesn't need, in
order to force the bug out, so that this problem doesn't have to be addressed
anywhere else. I believe that it is far easier to prevent this bug from the Pd
executable than to make any kind of elaborate circus with the loading-order of
pdsettings and pdrc and a little dummy .pd_linux (which has -lstdc++ without
using it, and has an empty _setup).
If you want, you can think of it as the first step for putting GridFlow in
pd-extended.
diff from Claude:
------------------8<--------cut-here--------8<------------------
--- pd-0.41-4/src/makefile.in.orig 2008-03-15 00:03:00.000000000 +0000
+++ pd-0.41-4/src/makefile.in 2009-08-23 18:55:35.000000000 +0100
-121,7 +121,7 @@
$(CC) $(CFLAGS) $(STRIPFLAG) -o $(BIN_DIR)/pdreceive u_pdreceive.c
$(PDEXEC): $(OBJ) $(BIN_DIR)
- cd ../obj; $(CC) $(LDFLAGS) $(DBG_CFLAGS) -o $(PDEXEC) $(OBJ) $(LIB)
+ cd ../obj; $(CC) $(LDFLAGS) $(DBG_CFLAGS) -o $(PDEXEC) $(OBJ) $(LIB)
-lstdc++
$(BIN_DIR)/pd-gui: $(GOBJ) $(GSRC)
cd ../obj; $(CC) $(INCLUDE) -o $(BIN_DIR)/$(GUINAME) $(GOBJ) $(GLIB)
------------------8<--------cut-here--------8<------------------
_ _ __ ___ _____ ________ _____________ _____________________ ...
| Mathieu Bouchard, Montréal, Québec. téléphone: +1.514.383.3801
-------------- next part --------------
_______________________________________________
Pd-dev mailing list
Pd-dev at iem.at
http://lists.puredata.info/listinfo/pd-dev
More information about the Gridflow-dev
mailing list