No rule to make target /usr/include/C++/4.1.0/list
the subject is the error i get when i try to compile the library.
the Makefile is attached below (will greatly appreciate your help) # $Id: Makefile,v 1.71 Exp $ # Makefile for the new libgnls CXX=g++ LOCALFLAGS= -D_GNU_SOURCE -ffast-math -D__linux__\ -funroll-loops -DOVERRIDE_COMPLEX_NORM \ -finline-limit=1000 -L:/users/eng/cvcluster/lib/fftw2/ # -pg # -DOVERRIDE_COMPLEX_NORM to define inline double norm(const Complex&) PREFIX=/usr/local CXXFLAGS= -g -O3 -Wall -Wstrict-prototypes \ -I. -I.. $(LOCALFLAGS) CXX=g++ ###CXXFLAGS= -g -O3 -Wall -Wstrict-prototypes -Wmissing-declarations \ -Wnested-externs -fno-exceptions -mpentiumpro -malign-double ###CXX=pgCC ###CXXFLAGS= -I. -I.. $(LOCALFLAGS) -L. -L/users/eng/cvcluster/lib \ CXX=g++ CXXFLAGS= -g -O3 -Wall -Wstrict-prototypes -Wmissing-declarations \ -Wnested-externs -fno-exceptions -mpentiumpro -malign-double ###--one_instantiation_per_object -fast -g gnlssrc=System.cc SystemElement.cc error.cc Field.cc Geometry.cc \ InputUnit.cc read_field.cc swap4.cc OutputUnit.cc variance.cc \ Fibre.cc FibreSegment.cc LinearDispersion.cc \ OutputField.cc max_intensity_and_index.cc fwhm.cc \ Average.cc create_gaussian.cc gaussian_peak_power.cc \ Gaussian.cc create_sech.cc sech_peak_power.cc Sech.cc Loop.cc \ Rescale.cc RescaleEnergyTo.cc InputField.cc FixEnergy.cc \ Conjugate.cc NOLM.cc VariationalField.cc complex_normal.cc \ Amplifier.cc RealFilter.cc ComplexFilter.cc GaussianFilter.cc \ SquareFilter.cc LorentzianFilter.cc FibreImpl.cc \ find_periodic.cc VectorField.cc RotatePolarisation.cc \ VariableFibreSegment.cc \ Bit.cc BitPattern.cc make_pattern.cc GeneratePattern.cc \ Detector.cc ElectricalFilter.cc EyeDiagram.cc PRBS.cc \ QFactor.cc calculate_Q_factor.cc FabryPerotFilter.cc \ runge_kutta_fehlberg.cc RamanAmplifiedSegment.cc Loss.cc \ LimitedAmplifier.cc SquaredDetector.cc \ AnyField.cc PDEField.cc ComplexFunction.cc SetZ.cc AdvanceZ.cc \ QFactorCollect.cc Generate.cc SquarePulse.cc \ Branch.cc Compensator.cc EstimateCompensation.cc \ Compensate.cc Add.cc RandomTimeShift.cc FrequencyShift.cc \ RaisedCosine.cc TiltFilter.cc MZModulator.cc DataModulator.cc \ WDMify.cc ReadFrame.cc PerFrame.cc QFactorVariational.cc \ Function.cc Hook.cc RealFilterSum.cc IIRFilter1.cc \ IIRFilter2.cc DPSK_Detector.cc pb2_MZ_modulator.cc \ InPMZModulator.cc CW.cc DGD.cc QPRBS.cc QGeneratePattern.cc \ InPDataModulator.cc InPNRZModulator.cc TruncGaussian.cc PhaseModulator.cc gnlsprogsrc = eye_diagram.cc Qfactors.cc gnlsprogs = $(gnlsprogsrc:.cc=) gnlsprogobj = $(gnlsprogsrc:.cc=.o) gnlsobj = $(gnlssrc:.cc=.o) dependencies=$(gnlssrc:.cc=.d) dependencies += testnew.d ccfiles = $(gnlssrc) hfiles = $(ccfiles:.cc=.h) typedefs.h allhfiles = $(hfiles) gnls.h installlibdir=$(PREFIX)/lib installincludedir=$(PREFIX)/include installbindir=$(PREFIX)/bin %.d: %.cc $(CXX) -MD $(CXXFLAGS) $< -E >/dev/null # includes are of the form <gnls/xxx.h>, so I do need the # depends on `system includes' as well (-MMD does not work) %.ps: %.dvi dvips $< default: libgnls.a all: libgnls.a eye_diagram Qfactor Qfactors combine_Q libgnls.a: $(gnlsobj) rm -f $@ ar cr $@ $^ ### $(CXX) $(CXXFLAGS) --prelink_objects $^ ### ar cr $@ $^ Template.dir/*.o $(gnlsprogs) testnew: % : %.o libgnls.a $(CXX) $(CXXFLAGS) -o $@ $^ -lfftw Qfactor: Qfactor.o $(CXX) $(CXXFLAGS) -o $@ $^ combine_Q: combine_Q.o $(CXX) $(CXXFLAGS) -o $@ $^ strip: strip libgnls.a ar -ts libgnls.a install: libgnls.a install -d $(installincludedir)/gnls install -m 644 $(hfiles) $(installincludedir)/gnls install -m 644 gnls.h $(installincludedir) install -m 644 libgnls.a $(installlibdir) install -m 755 mkSystemElement mkRealFilter mkComplexFilter \ $(installbindir) install -m 755 reduceIDLps $(installbindir) # install -m 755 eye_diagram Qfactor Qfactors combine_Q $(installbindir) clean: rm -rf *.o *.d a.out core testnew test_runge_kutta_fehlberg: runge_kutta_fehlberg.cc error.o $(CXX) $(CXXFLAGS) -DTEST_RUNGE_KUTTA_FEHLBERG -o $@ $^ Makefile: $(dependencies) include $(dependencies) |
/usr/include/C++/4.1.0/list :
'list' is a header, provided by "libstdc++-devel" from gcc version 4.1.0 . Your error has nothing to do with the Makefile. It's simply a missing header by name 'list'. Please try : $ ls /usr/include/C++/4.1.0/* Solution : Install / reinstall the libstdc++-devel package for the g++ version 4.1.0 Which OS are you using ? ? . |
my OS is vista.
thank you for the leads. Pls how do i Install / reinstall the libstdc++-devel package for the g++ version 4.1.0? i used the command "ls /usr/include/C++/4.1.0/*" in the exact directory where the library is located this is what i got: No match |
Do you mean Windows© Vista ? ?
Cygwin ? Or is it a Linux OS installed inside Windows Vista ? |
No rule to make target /usr/include/C++/4.1.0/list
i am using a windows 7 OS and am using cygwin as compiler
|
# 5
? No usable 'list' header, I think. But list.h . Ref. gcc-g++-4.1.0.tar.bz2 for Cygwin : http://artfiles.org/cygwin.org/pub/g...ses/gcc-4.1.0/ $ find libstdc++-v3/ -name list libstdc++-v3/testsuite/23_containers/list libstdc++-v3/include/debug/list $ find libstdc++-v3/ -name list.h libstdc++-v3/include/backward/list.h - |
I have downloaded the link below into cygwin
gcc-g++-4.1.0.tar.bz2 I still get the same error No rule to make target /usr/include/C++/4.1.0/list needed by System.o stop |
# 7 .
May be you will have to edit "System.c" to use list.h ? |
All times are GMT -5. The time now is 05:48 AM. |