IBM / rl-testbed-for-energyplus

Reinforcement Learning Testbed for Power Consumption Optimization using EnergyPlus
MIT License
186 stars 77 forks source link

Download issue. When I run the command: make j4 it appears: #38

Closed Ygrapefruit closed 4 years ago

Ygrapefruit commented 4 years ago

When I run the command: make j4 it appears: ../../Products/libenergyplusapi.so.9.1.0: undefined reference to `EnergyPlus::DXCoils::NumDXCoils' collect2: error: ld returned 1 exit status src/EnergyPlus/CMakeFiles/energyplus.dir/build.make:107: recipe for target 'Products/energyplus-9.1.0' failed make[2]: [Products/energyplus-9.1.0] Error 1 CMakeFiles/Makefile2:951: recipe for target 'src/EnergyPlus/CMakeFiles/energyplus.dir/all' failed make[1]: [src/EnergyPlus/CMakeFiles/energyplus.dir/all] Error 2 Makefile:129: recipe for target 'all' failed make: *** [all] Error 2

THe details is ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::NumDXCoils' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::SimDXCoil(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, int, bool, int&, int, ObjexxFCL::Optional<double const, void>, ObjexxFCL::Optional<double const, void>, ObjexxFCL::Optional<double const, void>, ObjexxFCL::Optional<double const, void>, ObjexxFCL::Optional<double const, void>)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to `EnergyPlus::DXCoils::SimDXCoilMultiSpeed(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, double, double, int&, ObjexxFCL::Optional<int const, void>, ObjexxFCL::Optional<int const, void>, ObjexxFCL::Optional<int const, void>, ObjexxFCL::Optional<int const, void>)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::GetDXCoilCapFTCurveIndex(int, bool&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::DXCoilTotalCooling' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::GetDXCoilIndex(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int&, bool&, ObjexxFCL::Optional<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, void>, ObjexxFCL::Optional<bool const, void>)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::FuelTypeElectricity' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::CalcMultiSpeedDXCoilHeating(int, double, double, int, int, int)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::GetMinOATCompressorUsingIndex(int, bool&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::CalcCBF(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, double, double, double, double, double, bool)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::GetCoilOutletNode(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, bool&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::HPWHHeatingCOP' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::GetCoilTypeNum(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, bool&, ObjexxFCL::Optional<bool const, void>)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::CalcDXHeatingCoil(int, double, int, ObjexxFCL::Optional<double const, void>, ObjexxFCL::Optional<double const, void>)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::EconomicLifeCycleCost::LCCparamPresent' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::SetCoilSystemHeatingDXFlag(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::SetCoilSystemCoolingData(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::DXCoil' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::EconomicTariff::UpdateUtilityBills()' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::GetCoilCapacityByIndexType(int, int, bool&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::CalcHPWHDXCoil(int, double)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::DXCoilOutletHumRat' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::AdjustCBF(double, double, double)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::SimDXCoilMultiMode(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int, bool, double, int, int&, int)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::SetDXCoilTypeData(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to `EnergyPlus::DXCoils::GetDXCoilAirFlow(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, bool&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::DXCoilFanOpMode' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::CalcDoe2DXCoil(int, int, bool, double, int, ObjexxFCL::Optional<int const, void>, ObjexxFCL::Optional<double const, void>, ObjexxFCL::Optional<double const, void>)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::DXCoilPartLoadRatio' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::HPWHHeatingCapacity' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::RatedOutdoorWetBulbTempHeat' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::CalcMultiSpeedDXCoilCooling(int, double, double, int, int, int, int)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::ElectricBaseboardRadiator::UpdateBBElecRadSourceValAvg(bool&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::EconomicLifeCycleCost::GetInputForLifeCycleCost()' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to `EnergyPlus::DXCoils::GetDXCoilName(int&, bool&, ObjexxFCL::Optional<std::cxx11::basic_string<char, std::char_traits, std::allocator > const, void>, ObjexxFCL::Optional<bool const, void>)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::DXCoilFullLoadOutAirHumRat' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::RatedOutdoorAirTempHeat' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::GetCoilCapacity(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::RatedInletAirTempHeat' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::SetDXCoilAirLoopNumber(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::GetCoilCondenserInletNode(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, bool&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::RatedOutdoorAirTemp' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::GetMinOATCompressor(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, bool&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::ElectricBaseboardRadiator::SimElecBaseboard(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int, int, bool, double&, int&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::ValidateADP(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, double, double, double, double, double, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to `EnergyPlus::DXCoils::GetDXCoilBypassedFlowFrac(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, bool&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::EconomicLifeCycleCost::ComputeLifeCycleCostAndReport()' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::GetDXCoilNumberOfSpeeds(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, bool&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::DXCoilFullLoadOutAirTemp' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::SetMSHPDXCoilHeatRecoveryFlag(int)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::DXCoilTotalHeating' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::EconomicTariff::WriteTabularTariffReports()' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::CalcMultiSpeedDXCoil(int, double, double, ObjexxFCL::Optional<bool const, void>)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::ControlVRFIUCoil(int, double, double, double, double, double, double&, double&, double&, double&, double&, double&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::DXCoilHeatInletAirDBTemp' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::EconomicTariff::ComputeTariff()' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to `EnergyPlus::DXCoils::GetDXCoilAvailSchPtr(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, bool&, ObjexxFCL::Optional<int const, void>)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::DXCoilOutletTemp' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::RatedInletWetBulbTemp' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to `EnergyPlus::DXCoils::GetCoilInletNode(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, bool&)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to EnergyPlus::DXCoils::DXCoilCoolInletAirWBTemp' ../../Products/libenergyplusapi.so.9.1.0: undefined reference toEnergyPlus::DXCoils::SetDXCoolingCoilData(int, bool&, ObjexxFCL::Optional<int, void>, ObjexxFCL::Optional<int, void>, ObjexxFCL::Optional<int, void>, ObjexxFCL::Optional<double, void>, ObjexxFCL::Optional<double, void>, ObjexxFCL::Optional<double, void>, ObjexxFCL::Optional<double, void>, ObjexxFCL::Optional<double, void>, ObjexxFCL::Optional<int, void>, ObjexxFCL::Optional<int, void>, ObjexxFCL::Optional<int, void>, ObjexxFCL::Optional<int, void>, ObjexxFCL::Optional<double, void>, ObjexxFCL::Optional<double, void>, ObjexxFCL::Optional<double, void>, ObjexxFCL::Optional<bool, void>, ObjexxFCL::Optional<bool, void>, ObjexxFCL::Optional<double, void>, ObjexxFCL::Optional<double, void>, ObjexxFCL::Optional<int, void>, ObjexxFCL::Optional<std::cxx11::basic_string<char, std::char_traits, std::allocator >, void>, ObjexxFCL::Optional<int, void>)' ../../Products/libenergyplusapi.so.9.1.0: undefined reference to `EnergyPlus::DXCoils::DXCoilHeatInletAirWBTemp' collect2: error: ld returned 1 exit status src/EnergyPlus/CMakeFiles/energyplus.dir/build.make:107: recipe for target 'Products/energyplus-9.1.0' failed make[2]: [Products/energyplus-9.1.0] Error 1 CMakeFiles/Makefile2:951: recipe for target 'src/EnergyPlus/CMakeFiles/energyplus.dir/all' failed make[1]: [src/EnergyPlus/CMakeFiles/energyplus.dir/all] Error 2 Makefile:129: recipe for target 'all' failed make: *** [all] Error 2

antoine-galataud commented 4 years ago

Hi @yanglina1234 ,

I already answered to you by email but pasting the response here for the sake of transparency.

For this compilation error you get, I can't really help you. You can try to restart from scratch (remove the sources directory first, then apply build steps as described in the project readme). If it doesn't work, you should raise the question to NREL on their EnergyPlus github repository (https://github.com/NREL/EnergyPlus).

For the 2nd exception ($ENERGYPLUS_MODEL environment variable not found), make sure you followed readme instructions about populating your $HOME/.bashrc. Once done, you should open a new shell to apply the changes, or execute source .bashrc in your current shell. Note that you should first try to have a proper installation of EnergyPlus.

Ygrapefruit commented 4 years ago

@antoine-galataud thank you for your answer , it is actually compile issue, I can execute make -j4 now.