On 08-Apr-2002 Lars Gullik Bjønnes wrote: > Juergen Vigna <[EMAIL PROTECTED]> writes: > >| My assumption in the reply to Rob was right, but here we definitvely have > | the solution for the problem ;) > > No, not the solution. libxforms should behave.
The following is from the xforms mailing list (from Peter S Galbraith): ------------------------------------------------------------------ : As for my buglets... : : It's important for packaging that the jpeg and Xpm libraries aren't : statically linked. So I selected: : : #define UseSystemXpm YES : #define StaticLink NO : #define BuildShared YES : : (Dynamic linking for fdesign and fd2ps just seemed like the right thing : to do). : : I'm not an expert, but I had to make some changes in the generated : Makefiles to get the desired effect: : : In lib/Makefile, I had to add "-ljpeg -L/usr/X11R6/lib -lXpm" to the : shared library build, otherwise libforms.so had missing symbols: : : (cd .; $(CC) -o ./$@~ $(SHLIBLDFLAGS) -Wl,-soname,$$SONAME $(OBJS) $(REQUIREDLIBS) -lc -ljpeg -L/usr/X11R6/lib -lXpm); \ : : Similarly, fdesign and fd2ps builds had to link to the new libforms.so : library by adding "-L../lib" : : : $(CCLINK) -o $@ -L../lib $(LDOPTIONS) $(OBJS) $(LOCAL_LIBRARIES) $(LDLIBS) $(EXTRA_LOAD_FLAGS) : : There are probably cleaner ways to accomplish this. ------------------------------------------------------------------ Peter's modifications are for Linux, I suppose, since I needed to modify a little more for my FreeBSD system: Defines in Imakefile: #define Optimize YES #define UseSystemXpm YES #define HaveStrerror YES #define StaticLink NO #define BuildGL YES #define BuildShared YES #define Solaris64Bit YES #define OptimizationLevel -O3 I do "xmkmf -a" and then modified the following files: lib/Makefile fdesign/Makefile fd2ps/Makefile demos/Makefile I modified the Makefile's, because I have no idea how to add these modifications to the Imakefile's! -- lib/Makefile (line 822) ----------------------------------------------- change: (cd .; $(CC) -o ./$@~ $(SHLIBLDFLAGS) -Wl,-soname,$$SONAME $(OBJS) $(REQUIREDLIBS) ); \ into: (cd .; $(CC) -o ./$@~ $(SHLIBLDFLAGS) -Wl,-soname,$$SONAME $(OBJS) $(REQUIREDLIBS) -lc -L/usr/local/lib -ljpeg -L/usr/X11R6/lib -lXpm -lGL -lGLU -pthread); \ -------------------------------------------------------------------------- -- fdesign/Makefile (line 790) ------------------------------------------- change: $(CCLINK) -o $@ $(LDOPTIONS) $(OBJS) $(LOCAL_LIBRARIES) $(LDLIBS) $(EXTRA_LOAD_FLAGS) into: $(CCLINK) -o $@ -L../lib $(LDOPTIONS) $(OBJS) $(LOCAL_LIBRARIES) $(LDLIBS) $(EXTRA_LOAD_FLAGS) -pthread -------------------------------------------------------------------------- -- fd2ps/Makefile (line 797) --------------------------------------------- change: $(CCLINK) -o $@ $(LDOPTIONS) $(OBJS) $(LOCAL_LIBRARIES) $(LDLIBS) $(EXTRA_LOAD_FLAGS) into: $(CCLINK) -o $@ -L../lib $(LDOPTIONS) $(OBJS) $(LOCAL_LIBRARIES) $(LDLIBS) $(EXTRA_LOAD_FLAGS) -pthread -------------------------------------------------------------------------- -- demos/Makefile (lines 261 and 263)------------------------------------ change: CCLINK = $(CC) CXXLINK = $(CXX) into: CCLINK = $(CC) -pthread CXXLINK = $(CXX) -pthread --------------------------------------------------------------------------- I hope this clarifies a bit more on Open Xforms 0.9999. Regards, Rob.