Here's a basic Makefile. I compiled your main with it on my Suse box, there are way too many libraries in there, just try to remove the ones you don't need.
Regards,
Commenter-1
CXX= g++ -g
DEFINES= -DHAVE_LIMITS_H -DHAVE_CONFIG_H -DCSFDB
OCC_INC=-I/opt/OpenCASCADE6.2.0/ros/inc
OCC_LIBS=-L/opt/OpenCASCADE6.2.0/ros/Linux/lib/ \
-L/opt/OpenCASCADE6.1.0/ros/../3rdparty/Linux/tcltk/lib/ \
-lTKXSBase -lTKXSDRAW -lXCAFPlugin -ltk -L/usr/lib -L/opt/gnome/lib \
-lBinLPlugin -lBinPlugin -lBinXCAFPlugin -lFWOSPlugin -lmscmd -lPTKernel -lStdLPlugin -lStdPlugin \
-lTKAdvTools -lTKBin -lTKBinL -lTKBinXCAF -lTKBO -lTKBool -lTKBRep -lTKCAF -lTKCDF -lTKCDLFront \
-lTKCPPClient -lTKCPPExt -lTKCPPIntExt -lTKCPPJini -lTKCSFDBSchema -lTKDCAF -lTKDraw -lTKernel \
-lTKFeat -lTKFillet -lTKG2d -lTKG3d -lTKGeomAlgo -lTKGeomBase -lTKHLR -lTKIDLFront -lTKIGES -lTKLCAF \
-lTKMath -lTKMesh -lTKMeshVS -lTKOffset -lTKOpenGl -lTKPCAF -lTKPLCAF -lTKPrim -lTKPShape \
-lTKService -lTKShapeSchema -lTKShHealing -lTKStdLSchema -lTKStdSchema -lTKSTEP -lTKSTEP209 \
-lTKSTEPAttr -lTKSTEPBase -lTKSTL -lTKTCPPExt -lTKTopAlgo -lTKTopTest -lTKV2d -lTKV3d -lTKViewerTest \
-lTKVRML -lTKXCAF -lTKXCAFSchema -lTKXDEDRAW -lTKXDEIGES -lTKXDESTEP -lTKXml -lTKXmlL -lTKXmlXCAF \
-lTKXSBase -lTKXSDRAW -lXCAFPlugin -lXmlLPlugin -lXmlPlugin -lXmlXCAFPlugin -ltk -lXmu -L/usr/lib \
-L/usr/X11R6/lib -L/opt/gnome/lib -pthread -lpng -lSM -lICE \
-lXi -lXrender -lXrandr -lXfixes -lXcursor -lXinerama -lfreetype -lfontconfig -lXext -lX11 \
-lz -lm -lgthread-2.0 -lglib-2.0 -ldl -lGLU -lGL -lpthread
LIBS=-L/opt/OpenCASCADE6.2.0/ros/../3rdparty/Linux/tcltk/lib/ \
-ltk -L/usr/lib -L/opt/gnome/lib
all: occ_cmd
.SUFFIXES: .o .c .cpp .cc .cxx .C
.cxx.o:
$(CXX) $(DEFINES) -c $(CXXFLAGS) $(OCC_INC) -o "$@" "$<"
occ_cmd:
$(CXX) $(DEFINES) $(OCC_INC) $(OCC_LIBS) main.cpp -o $@ $(LIBS)