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.

Reply via email to