Problem while using MiniPID?

So i’m trying to use the MiniPID library to maka a drivetrain pid but uh i’m getting weird error while trying to build it and let’s say i have no idea why it’s doing that here the output:

[info]: Saving Project ...

[info]: Project saved!

windows build for platform vexv5

"LINK build/Left5destroyerTestPIDVS.elf"

build/src/MiniPID.o: In function `MiniPID::checkSigns()':

MiniPID.cpp:(.text._ZN7MiniPID10checkSignsEv+0x0): multiple definition of `MiniPID::checkSigns()'

build/src/main.o:main.cpp:(.text._ZN7MiniPID10checkSignsEv+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::setSetpoint(double)':

MiniPID.cpp:(.text._ZN7MiniPID11setSetpointEd+0x0): multiple definition of `MiniPID::setSetpoint(double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID11setSetpointEd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::setDirection(bool)':

MiniPID.cpp:(.text._ZN7MiniPID12setDirectionEb+0x0): multiple definition of `MiniPID::setDirection(bool)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID12setDirectionEb+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::setMaxIOutput(double)':

MiniPID.cpp:(.text._ZN7MiniPID13setMaxIOutputEd+0x0): multiple definition of `MiniPID::setMaxIOutput(double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID13setMaxIOutputEd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::setOutputFilter(double)':

MiniPID.cpp:(.text._ZN7MiniPID15setOutputFilterEd+0x0): multiple definition of `MiniPID::setOutputFilter(double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID15setOutputFilterEd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::setOutputLimits(double)':

MiniPID.cpp:(.text._ZN7MiniPID15setOutputLimitsEd+0x0): multiple definition of `MiniPID::setOutputLimits(double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID15setOutputLimitsEd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::setOutputLimits(double, double)':

MiniPID.cpp:(.text._ZN7MiniPID15setOutputLimitsEdd+0x0): multiple definition of `MiniPID::setOutputLimits(double, double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID15setOutputLimitsEdd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::setSetpointRange(double)':

MiniPID.cpp:(.text._ZN7MiniPID16setSetpointRangeEd+0x0): multiple definition of `MiniPID::setSetpointRange(double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID16setSetpointRangeEd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::setOutputRampRate(double)':

MiniPID.cpp:(.text._ZN7MiniPID17setOutputRampRateEd+0x0): multiple definition of `MiniPID::setOutputRampRate(double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID17setOutputRampRateEd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::init()':

MiniPID.cpp:(.text._ZN7MiniPID4initEv+0x0): multiple definition of `MiniPID::init()'

build/src/main.o:main.cpp:(.text._ZN7MiniPID4initEv+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::setD(double)':

MiniPID.cpp:(.text._ZN7MiniPID4setDEd+0x0): multiple definition of `MiniPID::setD(double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID4setDEd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::setF(double)':

MiniPID.cpp:(.text._ZN7MiniPID4setFEd+0x0): multiple definition of `MiniPID::setF(double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID4setFEd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::setI(double)':

MiniPID.cpp:(.text._ZN7MiniPID4setIEd+0x0): multiple definition of `MiniPID::setI(double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID4setIEd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::setP(double)':

MiniPID.cpp:(.text._ZN7MiniPID4setPEd+0x0): multiple definition of `MiniPID::setP(double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID4setPEd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::clamp(double, double, double)':

MiniPID.cpp:(.text._ZN7MiniPID5clampEddd+0x0): multiple definition of `MiniPID::clamp(double, double, double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID5clampEddd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::reset()':

MiniPID.cpp:(.text._ZN7MiniPID5resetEv+0x0): multiple definition of `MiniPID::reset()'

build/src/main.o:main.cpp:(.text._ZN7MiniPID5resetEv+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::setPID(double, double, double)':

MiniPID.cpp:(.text._ZN7MiniPID6setPIDEddd+0x0): multiple definition of `MiniPID::setPID(double, double, double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID6setPIDEddd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::setPID(double, double, double, double)':

MiniPID.cpp:(.text._ZN7MiniPID6setPIDEdddd+0x0): multiple definition of `MiniPID::setPID(double, double, double, double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID6setPIDEdddd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::bounded(double, double, double)':

MiniPID.cpp:(.text._ZN7MiniPID7boundedEddd+0x0): multiple definition of `MiniPID::bounded(double, double, double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID7boundedEddd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::getOutput(double)':

MiniPID.cpp:(.text._ZN7MiniPID9getOutputEd+0x0): multiple definition of `MiniPID::getOutput(double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID9getOutputEd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::getOutput(double, double)':

MiniPID.cpp:(.text._ZN7MiniPID9getOutputEdd+0x0): multiple definition of `MiniPID::getOutput(double, double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPID9getOutputEdd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::getOutput()':

MiniPID.cpp:(.text._ZN7MiniPID9getOutputEv+0x0): multiple definition of `MiniPID::getOutput()'

build/src/main.o:main.cpp:(.text._ZN7MiniPID9getOutputEv+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::MiniPID(double, double, double)':

MiniPID.cpp:(.text._ZN7MiniPIDC2Eddd+0x0): multiple definition of `MiniPID::MiniPID(double, double, double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPIDC2Eddd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::MiniPID(double, double, double, double)':

MiniPID.cpp:(.text._ZN7MiniPIDC2Edddd+0x0): multiple definition of `MiniPID::MiniPID(double, double, double, double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPIDC2Edddd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::MiniPID(double, double, double)':

MiniPID.cpp:(.text._ZN7MiniPIDC2Eddd+0x0): multiple definition of `MiniPID::MiniPID(double, double, double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPIDC2Eddd+0x0): first defined here

build/src/MiniPID.o: In function `MiniPID::MiniPID(double, double, double, double)':

MiniPID.cpp:(.text._ZN7MiniPIDC2Edddd+0x0): multiple definition of `MiniPID::MiniPID(double, double, double, double)'

build/src/main.o:main.cpp:(.text._ZN7MiniPIDC2Edddd+0x0): first defined here

make: *** [vex/mkrules.mk:18: build/Left5destroyerTestPIDVS.elf] Error 1

[error]: make process closed with exit code : 2

well i’ve found out it wasn’t working because instead of importing MiniPid.h i imported MiniPid.cpp

1 Like