Hello,
My question concerning ghc-0.29-linux is:
if `make' completes the `ghc -c' part of the project all right,
then is not it supposed to finish successfully `ghc -o' ?
For my project, it compiles everything and then reports
-----------------------------------------------------------------------
ghc-0.29 -o run -cpp -hi-diffs -syslib ghc -syslib hbc -fhaskell-1.3
-ilin:parse:residue:pol:pol/factor:pol/symmfunc
Main.o parse/IParse.o parse/ParOpTab.o PreludeChar.o
PreludePair.o PreludeList.o PreludeInteger.o
IntOp.o Common.o
...
pol/symmfunc/OldSymDec.o
residue/PolRes.o(.data+0xc): multiple definition of
`IdealSyz_idealBasisToSubset_closure'
residue/IdealSyz.o(.data+0xc): first defined here
...
residue/PolResIImbed.o(.text+0x39e): undefined reference to
`PolRes_PRes_inregs_info'
...
residue/PolResIImbed.o(.text+0x36ae): undefined reference to
`PolRes_PRes_inregs_info'
make: *** [run] Error 1
---------------------------------------------------------------------
It worked all right earlier.
Then I had introduced some Maybe data operations, `import Maybes' in
all modules and -fhaskell-1.3 flag in Makefile for all the
modules.
I will try to reduce the test.
But maybe you can issue an advice right now ?
And is the enclosed below Makefile all right ?
Thank you.
Sergey Mechveliani [EMAIL PROTECTED]
------------------------------------------------------------------
------------------------------------------------------------------
HC = ghc-0.29
STD_HC_flags = \
$(EXTRA_HC_OPTS) -cpp -hi-diffs \
-syslib ghc -syslib hbc \
-fhaskell-1.3 \
-ilin:parse:residue:pol:pol/factor:pol/symmfunc \
HCFLAGS = $(EXTRA_HC_OPTS) $($*_flags) $(STD_HC_flags)
Main_flags =
parse/IParse_flags =
parse/ParOpTab_flags =
PreludeChar_flags =
PreludePair_flags =
PreludeList_flags =
PreludeInteger_flags =
IntOp_flags =
# -O -H9m -K1500k
Common_flags =
# -O -H10m -K1500k
Generic_flags = -H8m
# -O -H11m -K1500k
Generic1_flags =
SetCateg_flags = -H11m -K1500k
Group_flags = -H9m -K1000k
Ring_flags = -H10m -K1000k
Submodule_flags = -H8m -K1000k
Vector_flags = -H9m -K1000k
Matrix_flags = -H8m
lin/StaircMt_flags = -H8m -K1000k
lin/InvMatr_flags =
lin/ToDiag_flags = -H7m
lin/Det_flags = -H8m
lin/SolveLin_flags = -H8m
Fraction_flags = -H9m -K1000k
FractOp_flags = -H8m
# -O -H9m -K1200k
residue/IdealSyz_flags = -H8m
residue/QuotGr_flags = -H9m -K1000k
residue/ResRing_flags = -H10m -K1500k
residue/ResEuc_flags = -H9m -K1000k
residue/PolRes_flags = -H11m -K1500k
residue/PolResIImbed_flags = -H8m
pol/PP_flags =
# -O -H11m -K1500k
pol/Pol_flags = -H10m -K1500k
pol/PolOp_flags = -H9m -K1000k
# -O -H11m -K1500k
pol/PolOp1_flags = -H10m -K1500k
pol/ExprPol_flags =
pol/EPol_flags = -H8m
pol/EPolOp_flags = -H8m
# -O -H10m -K1500k
pol/PolGCD_flags = -H8m -K1000k
pol/PolNF_flags = -H8m -K1000k
pol/GBasis_flags = -H9m -K1500k
pol/GBasEuc_flags =
pol/PolRelB_flags =
pol/factor/PolFact_flags = -H9m -K1500k
pol/symmfunc/Partit_flags = -H10m -K1500k
# -O -H10m -K1500k
pol/symmfunc/Partit1_flags =
pol/symmfunc/HookBand_flags = -H8m
# -O -H10m -K1500k
pol/symmfunc/SymPol_flags =
# -O -H9m -K1500k
pol/symmfunc/SymPolOp_flags =
# -O -H9m -K1500k
pol/symmfunc/SymFTran_flags = -H8m -K1000k
pol/symmfunc/OldSymDec_flags = -H9m
SRCS = \
Main.hs \
parse/IParse.hs parse/ParOpTab.hs \
PreludeChar.hs PreludePair.hs \
PreludeList.hs \
PreludeInteger.hs IntOp.hs \
Common.hs Generic.hs \
Generic1.hs \
SetCateg.hs Group.hs \
Ring.hs Submodule.hs \
Vector.hs Matrix.hs \
lin/StaircMt.hs lin/InvMatr.hs \
lin/ToDiag.hs lin/Det.hs \
lin/SolveLin.hs \
Fraction.hs FractOp.hs \
residue/IdealSyz.hs residue/QuotGr.hs \
residue/ResRing.hs residue/ResEuc.hs \
residue/PolRes.hs residue/PolResIImbed.hs \
pol/PP.hs pol/Pol.hs \
pol/PolOp.hs pol/PolOp1.hs \
pol/ExprPol.hs pol/EPol.hs \
pol/EPolOp.hs pol/PolGCD.hs \
pol/PolNF.hs pol/GBasis.hs \
pol/GBasEuc.hs pol/PolRelB.hs \
pol/factor/PolFact.hs \
pol/symmfunc/Partit.hs pol/symmfunc/Partit1.hs \
pol/symmfunc/HookBand.hs pol/symmfunc/SymPol.hs \
pol/symmfunc/SymPolOp.hs pol/symmfunc/SymFTran.hs \
pol/symmfunc/OldSymDec.hs
OBJS = \
Main.o \
parse/IParse.o parse/ParOpTab.o \
PreludeChar.o PreludePair.o \
PreludeList.o \
PreludeInteger.o IntOp.o \
Common.o Generic.o \
Generic1.o \
SetCateg.o Group.o \
Ring.o Submodule.o \
Vector.o Matrix.o \
lin/StaircMt.o lin/InvMatr.o \
lin/ToDiag.o lin/Det.o \
lin/SolveLin.o \
Fraction.o FractOp.o \
residue/IdealSyz.o residue/QuotGr.o \
residue/ResRing.o residue/ResEuc.o \
residue/PolRes.o residue/PolResIImbed.hs \
pol/PP.o pol/Pol.o \
pol/PolOp.o pol/PolOp1.o \
pol/ExprPol.o pol/EPol.o \
pol/EPolOp.o pol/PolGCD.o \
pol/PolNF.o pol/GBasis.o \
pol/GBasEuc.o pol/PolRelB.o \
pol/factor/PolFact.o \
pol/symmfunc/Partit.o pol/symmfunc/Partit1.o \
pol/symmfunc/HookBand.o pol/symmfunc/SymPol.o \
pol/symmfunc/SymPolOp.o pol/symmfunc/SymFTran.o \
pol/symmfunc/OldSymDec.o
.SUFFIXES : .o .hs
.o.hi:
@:
.hs.o:
$(HC) -c $< $(HCFLAGS)
# $(RM) $@
# $(HC) -c $< $(HCFLAGS)
#
all : run
run : $(OBJS)
$(HC) -o $@ $(HCFLAGS) $(OBJS)
objs : $(OBJS)
tags :
hstags $(SRCS)
depend :
mkdependHS -- $(HCFLAGS) -- $(SRCS)
# DO NOT DELETE: Beginning of Haskell dependencies
Main.o : Main.hs
Main.o : ./PreludeInteger.hi
Main.o : ./PreludeList.hi
Main.o : ./Common.hi
...
pol/symmfunc/OldSymDec.o : parse/IParse.hi
# DO NOT DELETE: End of Haskell dependencies