gem again

Michael A. Thompson mat0001 at jove.acs.unt.edu
Sun Sep 26 09:50:15 CEST 1999


anybody got a working makefile on SGI or Linux  that I can look at?

my problem is that everytime I recompile gem and run it I get different
errors.
am I missing a something in the link stage?

dhomont 36% !!
./pd -lib /usr/LocalApps/pd/gem_new/src/Gem
pd: /usr/LocalApps/pd/gem_new/src/Gem.pd_irix6: 24432:./pd: rld: Fatal
Error: unresolvable symbol in
/usr/LocalApps/pd/gem_new/src/Gem.pd_irix6: class_addbang
pd: /usr/LocalApps/pd/gem_new/src/Gem: can't load library
dhomont 37% !!
./pd -lib /usr/LocalApps/pd/gem_new/src/Gem
pd: /usr/LocalApps/pd/gem_new/src/Gem.pd_irix6: 24481:./pd: rld: Fatal
Error: unresolvable symbol in
/usr/LocalApps/pd/gem_new/src/Gem.pd_irix6: class_new
pd: /usr/LocalApps/pd/gem_new/src/Gem: can't load library
pd: exiting
dhomont 38% !!
./pd -lib /usr/LocalApps/pd/gem_new/src/Gem
pd: /usr/LocalApps/pd/gem_new/src/Gem.pd_irix6: 24417:./pd: rld: Fatal
Error: unresolvable symbol in
/usr/LocalApps/pd/gem_new/src/Gem.pd_irix6: class_addbang
pd: /usr/LocalApps/pd/gem_new/src/Gem: can't load library
pd: exiting
dhomont 39% !!
./pd -lib /usr/LocalApps/pd/gem_new/src/Gem
pd: /usr/LocalApps/pd/gem_new/src/Gem.pd_irix6: 24276:./pd: rld: Fatal
Error: unresolvable symbol in
/usr/LocalApps/pd/gem_new/src/Gem.pd_irix6: clock_new
pd: /usr/LocalApps/pd/gem_new/src/Gem: can't load library
pd: exiting

here is my makefile on SGI with egcs (g++):
##################################################
#
#   Makefile for GEM
#   Graphics Environment for Multimedia
#
#   mark at danks.org
#
#   Copyright (c) 1997-1999 Mark Danks.
#   For information on usage and redistribution, and for a DISCLAIMER OF
ALL
#   WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution.
#
#
##################################################

SHELL = /usr/bin/sh

# search path
#############
OBJ_DIR      = Objects
VPATH      = ${OBJ_DIR}

# the objects
#############
BASE_CORE = CPPExtern.o GemMan.o GemBase.o GemLoadObj.o GemEvent.o
BASE_EXT = TextBase.o GemPathBase.o GemShape.o GemGluObj.o GemPixObj.o
GemPixDualObj.o sgiimage.o
BASE_OBJ = ${BASE_CORE} ${BASE_EXT}
UTILS_BASE = Matrix.o GemSetup.o GemState.o GemCache.o GemDag.o
UTILS_PIX = GemFuncUtil.o GemPixUtil.o GemPixImageLoad.o GemModelData.o
UTILS_OS = GemWinCreateXWin.o
UTILS = ${UTILS_BASE} ${UTILS_PIX} ${UTILS_OS}

CONTROLS_A = gemwin.o gemhead.o camera.o
CONTROLS_B = gemmouse.o gemtablet.o gemorb.o render_trigger.o
CONTROLS = ${CONTROLS_A} ${CONTROLS_B}
MANIPS_A = translateXYZ.o scaleXYZ.o rotateXYZ.o colorRGB.o
MANIPS_B = rotate.o translate.o scale.o color.o depth.o alpha.o
separator.o
MANIPS_C = linear_path.o spline_path.o accumrotate.o ortho.o
MANIPULATORS = ${MANIPS_A} ${MANIPS_B} ${MANIPS_C}
2DGEOS = square.o triangle.o circle.o text2d.o
3DGEOS = cube.o cone.o sphere.o imageVert.o text3d.o textoutline.o
SPEC_GEOS = polygon.o model.o multimodel.o curve.o colorSquare.o
GEOS = ${2DGEOS} ${3DGEOS} ${SPEC_GEOS}

MARKEX_A = MarkExSetup.o  randomF.o abs.o multiselect.o counter.o
hsvrgb.o
MARKEX_B = reson.o tripleLine.o average.o vector.o m_control.o strcat.o
MARKEX = ${MARKEX_A} ${MARKEX_B}

#NONGEOS = fillback.o world_light.o light.o particle.o
NONGEOS = world_light.o light.o

PART_A = part_color.o part_draw.o part_follow.o part_gravity.o
PART_B = part_head.o part_killold.o part_killslow.o part_orbitpoint.o
PART_C = part_size.o part_source.o part_velcone.o part_velsphere.o
PARTICLE = ${PART_A} ${PART_B} ${PART_C}

PIX_GEOS = pix_image.o pix_multiimage.o pix_imageInPlace.o pix_texture.o

PIX_CONTROLS = pix_resize.o pix_draw.o pix_snap.o pix_buf.o pix_zoom.o
PIX_MANA = pix_threshold.o pix_gain.o pix_color.o pix_multiply.o
PIX_MANB = pix_bitmask.o pix_add.o pix_subtract.o pix_flip.o
PIX_MANC = pix_colormatrix.o pix_alpha.o pix_convolve.o pix_composite.o
PIX_MAND = pix_coloralpha.o pix_mask.o pix_clearblock.o
PIX_MANE = pix_coordinate.o pix_2grey.o pix_invert.o pix_data.o
PIX_MANIPS = ${PIX_MANA} ${PIX_MANB} ${PIX_MANC} ${PIX_MAND} ${PIX_MANE}

PIXES = ${PIX_GEOS} ${PIX_CONTROLS} ${PIX_MANIPS}

SGI_SPECIFIC = pix_videoSGI.o pix_indycam.o

OBJ = ${BASE_OBJ} ${UTILS} ${CONTROLS} ${MANIPULATORS} \
      ${GEOS} ${NONGEOS} ${PIXES} ${MARKEX} ${PARTICLE}

SGI_OBJ = ${OBJ} ${SGI_SPECIFIC}
LINUX_OBJ = ${OBJ}

# the target
############
# SGI
TARGET = ../Gem.pd_irix6
# Linux
# TARGET = ../../Gem.pd_linux

# compile flags
###############
# compilation targets
REL_CC_FLAGS    = -DNDEBUG -UDEBUG -O2
DBG_CC_FLAGS  = -DDEBUG -g

# AuxLib includes
AUXDIR   = ../AuxLibs
AUXINC_IMG  = -I${AUXDIR}/Jpeg -I${AUXDIR}/tiff/libtiff
-I${AUXDIR}/liborb
AUXINC_POLY  = -I${AUXDIR}/gltt -I${AUXDIR}/td -I${AUXDIR}/particle
AUXINC   = ${AUXINC_IMG} ${AUXINC_POLY}
INC_FLAGS  = -I. -I.. -I../../../src ${AUXINC}
COMP_FLAGS  =

# SGI
#WARN_FLAGS  = -woff 3157,3173
# Linux
WARN_FLAGS  = -Wall

ALL_CC_FLAGS = ${COMP_FLAGS} ${WARN_FLAGS} ${INC_FLAGS}

#linker flags
#############
# AuxLib libraries
AUXLIB_IMG = -L/usr/freeware/lib32 -ljpeg -L${AUXDIR}/tiff -ltiff
AUXLIB_POLYA = -L/usr/local/lib -lgltt -L/usr/freeware/lib32 -lttf
AUXLIB_POLYB = -L${AUXDIR}/td -ltd -L${AUXDIR}/particle -lparticle
AUXLIB_POLYC = -L${AUXDIR}/liborb -lorb
AUXLIB_POLY = ${AUXLIB_POLYA} ${AUXLIB_POLYB} ${AUXLIB_POLYC}
AUXLIB  = ${AUXLIB_IMG} ${AUXLIB_POLY}

# SGI
LIB = -lX11 -lGLU -lGL -lvl -lm ${AUXLIB}
LD_FLAGS = -elf -shared

# Linux
#LIB = -lMesaGLU -lMesaGL -lm ${AUXLIB} -lX11 -lXext -ldl
#LD_FLAGS = -shared -L/usr/X11R6/lib

all: debug

# debug version
#--------------
debug:
 @echo "\n==========Compiling Debug=========="
 ${MAKE} Application_objects "CC_FLAGS = ${ALL_CC_FLAGS}
${DBG_CC_FLAGS}"
 @echo "\n==========Linking Target=========="
 @${MAKE} ${TARGET}

# release version
#----------------
release:
 @echo "\n==========Compiling Release=========="
 ${MAKE} Application_objects "CC_FLAGS = ${ALL_CC_FLAGS}
${REL_CC_FLAGS}"
 @echo "\n==========Linking Target=========="
 @${MAKE} ${TARGET}
 @echo "\n==========Striping Target=========="
 cd ${OBJ_DIR}; strip -f ${TARGET}


# program target
################
# SGI
${TARGET}: ${SGI_OBJ}
 cd ${OBJ_DIR}; c++ ${LD_FLAGS} -o $@ ${SGI_OBJ} ${LIB}

# Linux
#${TARGET}: ${LINUX_OBJ}
# cd ${OBJ_DIR}; ld ${LD_FLAGS} -o ${TARGET} ${LINUX_OBJ} ${LIB}


TARG_DIR = Base Geos Nongeos Controls Manips Pixes MarkEx Particles

# make target
#############
# SGI
MAKE_TARG = sgi

# Linux
#MAKE_TARG = all

Application_objects:
 @for d in ${TARG_DIR}; do \
     echo "\n----------$$d----------"; \
     cd $$d ; ${MAKE} ${MAKE_TARG}; cd ..; \
 done


# helper targets
################
AUX_FILES = gem/GEM.*
DOC_FILES = gem/help gem/examples gem/doc
SRC_FILES = gem/src
BCK_FILES = ${AUX_FILES} ${DOC_FILES} ${SRC_FILES}

backup:
 cd ../..; tar cvf GEMbackupC++.tar ${BCK_FILES}; \
 compress GEMbackupC++.tar; \
 mv GEMbackupC++.tar.Z ~/Backup/

clean:
 rm ${OBJ_DIR}/*.o

clobber: clean
 rm ${TARGET}
 rm Makefile.depend


#--------------------------
# Makedepend targets
#--------------------------
#
# header file dependencies
#---------
depend:
 @for d in ${TARG_DIR}; do \
     echo "==== $$d ===="; \
     cd $$d ; ${MAKE} dependencies 1>/dev/null 2>&1; cd ..; \
 done

# need a dummy file for Make.depend
#---------
firstTime:
 @for d in ${TARG_DIR}; do \
     cd $$d ; touch Make.depend; cd ..; \
 done

I thought that maybe my machine is not configured correctly except I can
compile everything(pd, Gnome, KDE, other main stream Linux apps) but Gem
on it.

thanks
m

--
----------------------------------
Michael A. Thompson
[IRIX - NeXTStep - Linux - MacOS - Windows]

Home: (940)382-2086
E-Mail: mat0001 at jove.acs.unt.edu
----------------------------------






More information about the Pd-list mailing list