Why does compiling Basic Linear Algebra library by Tom Stewart give me so many errors ?

Hello, here is the code to process a 2D Kalman Filter by Carbon Aeronautics using BasicLinearAlgebra.h 5.0.0. I put it in my Arduino IDE latest version 2.3.2 to verify first:

/*
The contents of this code and instructions are the intellectual property of Carbon Aeronautics. 
The text and figures in this code and instructions are licensed under a Creative Commons Attribution - Noncommercial - ShareAlike 4.0 International Public Licence. 
This license lets you remix, adapt, and build upon your work non-commercially, as long as you credit Carbon Aeronautics 
(but not in any way that suggests that we endorse you or your use of the work) and license your new creations under the identical terms.
This code and instruction is provided "As Is” without any further warranty. Neither Carbon Aeronautics or the author has any liability to any person or entity 
with respect to any loss or damage caused or declared to be caused directly or indirectly by the instructions contained in this code or by 
the software and hardware described in it. As Carbon Aeronautics has no control over the use, setup, assembly, modification or misuse of the hardware, 
software and information described in this manual, no liability shall be assumed nor accepted for any resulting damage or injury. 
By the act of copying, use, setup or assembly, the user accepts all resulting liability.

1.0  18 February 2023 -  initial release
*/
#include <Wire.h>
float RateRoll, RatePitch, RateYaw;
float AngleRoll, AnglePitch;
float AccX, AccY, AccZ;
float AccZInertial;
float LoopTimer;
uint16_t dig_T1, dig_P1;
int16_t  dig_T2, dig_T3, dig_P2, dig_P3, dig_P4, dig_P5;
int16_t  dig_P6, dig_P7, dig_P8, dig_P9; 
float AltitudeBarometer, AltitudeBarometerStartUp;
int RateCalibrationNumber;
#include <BasicLinearAlgebra.h>
using namespace BLA;
float AltitudeKalman, VelocityVerticalKalman;
BLA::Matrix<2,2> F; BLA::Matrix<2,1> G;
BLA::Matrix<2,2> P; BLA::Matrix<2,2> Q;
BLA::Matrix<2,1> S; BLA::Matrix<1,2> H;
BLA::Matrix<2,2> I; BLA::Matrix<1,1> Acc;
BLA::Matrix<2,1> K; BLA::Matrix<1,1> R;
BLA::Matrix<1,1> L; BLA::Matrix<1,1> M;
void kalman_2d(void){
  Acc = {AccZInertial};
  S=F*S+G*Acc;
  P=F*P*~F+Q;
  L=H*P*~H+R;
  K=P*~H*Invert(L);
  M={AltitudeBarometer};
  S=S+K*(M-H*S);
  AltitudeKalman=S(0,0); 
  VelocityVerticalKalman=S(1,0); 
  P=(I-K*H)*P;
}
void barometer_signals(void){
  Wire.beginTransmission(0x76);
  Wire.write(0xF7);
  Wire.endTransmission();
  Wire.requestFrom(0x76,6);
  uint32_t press_msb = Wire.read();
  uint32_t press_lsb = Wire.read();
  uint32_t press_xlsb = Wire.read();
  uint32_t temp_msb = Wire.read();
  uint32_t temp_lsb = Wire.read();
  uint32_t temp_xlsb = Wire.read();
  unsigned long int adc_P = (press_msb << 12) | (press_lsb << 4) | (press_xlsb >>4);
  unsigned long int adc_T = (temp_msb << 12) | (temp_lsb << 4) | (temp_xlsb >>4);
  signed long int var1, var2;
  var1 = ((((adc_T >> 3) - ((signed long int )dig_T1 <<1)))* ((signed long int )dig_T2)) >> 11;
  var2 = (((((adc_T >> 4) - ((signed long int )dig_T1)) * ((adc_T>>4) - ((signed long int )dig_T1)))>> 12) * ((signed long int )dig_T3)) >> 14;
  signed long int t_fine = var1 + var2;
  unsigned long int p;
  var1 = (((signed long int )t_fine)>>1) - (signed long int )64000;
  var2 = (((var1>>2) * (var1>>2)) >> 11) * ((signed long int )dig_P6);
  var2 = var2 + ((var1*((signed long int )dig_P5)) <<1);
  var2 = (var2>>2)+(((signed long int )dig_P4) <<16);
  var1 = (((dig_P3 * (((var1>>2)*(var1>>2)) >> 13))>>3)+((((signed long int )dig_P2) * var1)>>1))>>18;
  var1 = ((((32768+var1))*((signed long int )dig_P1)) >>15);
  if (var1 == 0) { p=0;}    
  p = (((unsigned long int )(((signed long int ) 1048576)-adc_P)-(var2>>12)))*3125;
  if(p<0x80000000){ p = (p << 1) / ((unsigned long int ) var1);}
  else { p = (p / (unsigned long int )var1) * 2;  }
  var1 = (((signed long int )dig_P9) * ((signed long int ) (((p>>3) * (p>>3))>>13)))>>12;
  var2 = (((signed long int )(p>>2)) * ((signed long int )dig_P8))>>13;
  p = (unsigned long int)((signed long int )p + ((var1 + var2+ dig_P7) >> 4));
  double pressure=(double)p/100;
  AltitudeBarometer=44330*(1-pow(pressure/1013.25, 1/5.255))*100;
}
void gyro_signals(void) {
  Wire.beginTransmission(0x68);
  Wire.write(0x1A);
  Wire.write(0x05);
  Wire.endTransmission();
  Wire.beginTransmission(0x68);
  Wire.write(0x1C);
  Wire.write(0x10);
  Wire.endTransmission();
  Wire.beginTransmission(0x68);
  Wire.write(0x3B);
  Wire.endTransmission(); 
  Wire.requestFrom(0x68,6);
  int16_t AccXLSB = Wire.read() << 8 | Wire.read();
  int16_t AccYLSB = Wire.read() << 8 | Wire.read();
  int16_t AccZLSB = Wire.read() << 8 |  Wire.read();
  Wire.beginTransmission(0x68);
  Wire.write(0x1B); 
  Wire.write(0x8);
  Wire.endTransmission();                                                   
  Wire.beginTransmission(0x68);
  Wire.write(0x43);
  Wire.endTransmission();
  Wire.requestFrom(0x68,6);
  int16_t GyroX=Wire.read()<<8 | Wire.read();
  int16_t GyroY=Wire.read()<<8 | Wire.read();
  int16_t GyroZ=Wire.read()<<8 | Wire.read();
  RateRoll=(float)GyroX/65.5;
  RatePitch=(float)GyroY/65.5;
  RateYaw=(float)GyroZ/65.5;
  AccX=(float)AccXLSB/4096;
  AccY=(float)AccYLSB/4096;
  AccZ=(float)AccZLSB/4096;
  AngleRoll=atan(AccY/sqrt(AccX*AccX+AccZ*AccZ))*1/(3.142/180);
  AnglePitch=-atan(AccX/sqrt(AccY*AccY+AccZ*AccZ))*1/(3.142/180);
}
void setup() {
  Serial.begin(57600);
  pinMode(13, OUTPUT);
  digitalWrite(13, HIGH);
  Wire.setClock(400000);
  Wire.begin();
  delay(250);
  Wire.beginTransmission(0x68); 
  Wire.write(0x6B);
  Wire.write(0x00);
  Wire.endTransmission();
  Wire.beginTransmission(0x76);
  Wire.write(0xF4);
  Wire.write(0x57);
  Wire.endTransmission();   
  Wire.beginTransmission(0x76);
  Wire.write(0xF5); 
  Wire.write(0x14);
  Wire.endTransmission();   
  uint8_t data[24], i=0;
  Wire.beginTransmission(0x76);
  Wire.write(0x88);
  Wire.endTransmission();
  Wire.requestFrom(0x76,24);        
  while(Wire.available()){
    data[i] = Wire.read();
    i++;
  } 
  dig_T1 = (data[1] << 8) | data[0]; 
  dig_T2 = (data[3] << 8) | data[2];
  dig_T3 = (data[5] << 8) | data[4];
  dig_P1 = (data[7] << 8) | data[6]; 
  dig_P2 = (data[9] << 8) | data[8];
  dig_P3 = (data[11]<< 8) | data[10];
  dig_P4 = (data[13]<< 8) | data[12];
  dig_P5 = (data[15]<< 8) | data[14];
  dig_P6 = (data[17]<< 8) | data[16];
  dig_P7 = (data[19]<< 8) | data[18];
  dig_P8 = (data[21]<< 8) | data[20];
  dig_P9 = (data[23]<< 8) | data[22]; delay(250);
  for (RateCalibrationNumber=0; RateCalibrationNumber<2000; RateCalibrationNumber ++) {
    barometer_signals();
    AltitudeBarometerStartUp+=AltitudeBarometer; 
    delay(1); 
  }
  AltitudeBarometerStartUp/=2000;
  F = {1, 0.004,
            0, 1};  
  G = {0.5*0.004*0.004,
            0.004};
  H = {1, 0};
  I = {1, 0,
           0, 1};
  Q = G * ~G*10*10;
  R = {30*30};
  P = {0, 0,
           0, 0};
  S = {0,
           0};
           LoopTimer=micros();
}
void loop() {
 gyro_signals();
  AccZInertial=-sin(AnglePitch*(3.142/180))*AccX+cos(AnglePitch*(3.142/180))*sin(AngleRoll*(3.142/180))* AccY+cos(AnglePitch*(3.142/180))*cos(AngleRoll*(3.142/180))*AccZ;   
  AccZInertial=(AccZInertial-1)*9.81*100;
  barometer_signals();
  AltitudeBarometer-=AltitudeBarometerStartUp;
  kalman_2d();
  Serial.print("Altitude [cm]: ");
  Serial.print(AltitudeKalman);
  Serial.print(" Vertical velocity [cm/s]: ");
  Serial.println(VelocityVerticalKalman);
  while (micros() - LoopTimer < 4000); 
  LoopTimer=micros();                  
}

Verifying gives a lot of errors but in Carbon Aeronautics's video 19, he had no problem at all. I am using ESP32 Dev Kit.

In file included from c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/BasicLinearAlgebra.h:10,
                 from C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-3900-igtl2t.od57r\sketch_jun29a\sketch_jun29a.ino:25:
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/ElementStorage.h:136:43: error: expected unqualified-id before 'const'
  136 |     HorizontalConcat<LeftType, RightType>(const LeftType &l, const RightType &r) : left(l), right(r) {}
      |                                           ^~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/ElementStorage.h:136:43: error: expected ')' before 'const'
  136 |     HorizontalConcat<LeftType, RightType>(const LeftType &l, const RightType &r) : left(l), right(r) {}
      |                                          ~^~~~~
      |                                           )
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/ElementStorage.h:151:41: error: expected unqualified-id before 'const'
  151 |     VerticalConcat<TopType, BottomType>(const TopType &t, const BottomType &b) : top(t), bottom(b) {}
      |                                         ^~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/ElementStorage.h:151:41: error: expected ')' before 'const'
  151 |     VerticalConcat<TopType, BottomType>(const TopType &t, const BottomType &b) : top(t), bottom(b) {}
      |                                        ~^~~~~
      |                                         )
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-3900-igtl2t.od57r\sketch_jun29a\sketch_jun29a.ino: In function 'void kalman_2d()':
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-3900-igtl2t.od57r\sketch_jun29a\sketch_jun29a.ino:39:9: error: no match for 'operator*' (operand types are 'BLA::Matrix<2, 1>' and 'bool')
   39 |   K=P*~H*Invert(L);
      |     ~~~~^~~~~~~~~~
      |      |         |
      |      |         bool
      |      BLA::Matrix<2, 1>
In file included from c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/BasicLinearAlgebra.h:181:
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:10:35: note: candidate: 'template<class MatAType, class MatBType, int MatARows, int MatACols, int MatBCols, class DType> BLA::Matrix<MatARows, MatBCols, DType> BLA::operator*(const MatrixBase<MatAType, MatARows, MatACols, DType>&, const MatrixBase<MatBType, MatACols, MatBCols, DType>&)'
   10 | Matrix<MatARows, MatBCols, DType> operator*(const MatrixBase<MatAType, MatARows, MatACols, DType> &matA,
      |                                   ^~~~~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:10:35: note:   template argument deduction/substitution failed:
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-3900-igtl2t.od57r\sketch_jun29a\sketch_jun29a.ino:39:18: note:   mismatched types 'const BLA::MatrixBase<MatBType, MatACols, MatBCols, DType>' and 'bool'
   39 |   K=P*~H*Invert(L);
      |                  ^
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:168:27: note: candidate: 'template<class MatType, int Rows, int Cols, class DType> BLA::Matrix<Rows, Cols, DType> BLA::operator*(const MatrixBase<MatType, Rows, Cols, DType>&, DType)'
  168 | Matrix<Rows, Cols, DType> operator*(const MatrixBase<MatType, Rows, Cols, DType> &mat, const DType k)
      |                           ^~~~~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:168:27: note:   template argument deduction/substitution failed:
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-3900-igtl2t.od57r\sketch_jun29a\sketch_jun29a.ino:39:18: note:   deduced conflicting types for parameter 'DType' ('float' and 'bool')
   39 |   K=P*~H*Invert(L);
      |                  ^
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:176:27: note: candidate: 'template<class MatType, int Rows, int Cols, class DType> BLA::Matrix<Rows, Cols, DType> BLA::operator*(DType, const MatrixBase<MatType, Rows, Cols, DType>&)'
  176 | Matrix<Rows, Cols, DType> operator*(const DType k, const MatrixBase<MatType, Rows, Cols, DType> &mat)
      |                           ^~~~~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:176:27: note:   template argument deduction/substitution failed:
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-3900-igtl2t.od57r\sketch_jun29a\sketch_jun29a.ino:39:18: note:   mismatched types 'const BLA::MatrixBase<MatType, Rows, Cols, DType>' and 'bool'
   39 |   K=P*~H*Invert(L);
      |                  ^
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-3900-igtl2t.od57r\sketch_jun29a\sketch_jun29a.ino: In function 'void setup()':
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-3900-igtl2t.od57r\sketch_jun29a\sketch_jun29a.ino:169:13: error: no match for 'operator*' (operand types are 'BLA::Matrix<2, 2>' and 'int')
  169 |   Q = G * ~G*10*10;
      |       ~~~~~~^~~
      |         |    |
      |         |    int
      |         BLA::Matrix<2, 2>
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:10:35: note: candidate: 'template<class MatAType, class MatBType, int MatARows, int MatACols, int MatBCols, class DType> BLA::Matrix<MatARows, MatBCols, DType> BLA::operator*(const MatrixBase<MatAType, MatARows, MatACols, DType>&, const MatrixBase<MatBType, MatACols, MatBCols, DType>&)'
   10 | Matrix<MatARows, MatBCols, DType> operator*(const MatrixBase<MatAType, MatARows, MatACols, DType> &matA,
      |                                   ^~~~~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:10:35: note:   template argument deduction/substitution failed:
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-3900-igtl2t.od57r\sketch_jun29a\sketch_jun29a.ino:169:14: note:   mismatched types 'const BLA::MatrixBase<MatBType, MatACols, MatBCols, DType>' and 'int'
  169 |   Q = G * ~G*10*10;
      |              ^~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:168:27: note: candidate: 'template<class MatType, int Rows, int Cols, class DType> BLA::Matrix<Rows, Cols, DType> BLA::operator*(const MatrixBase<MatType, Rows, Cols, DType>&, DType)'
  168 | Matrix<Rows, Cols, DType> operator*(const MatrixBase<MatType, Rows, Cols, DType> &mat, const DType k)
      |                           ^~~~~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:168:27: note:   template argument deduction/substitution failed:
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-3900-igtl2t.od57r\sketch_jun29a\sketch_jun29a.ino:169:14: note:   deduced conflicting types for parameter 'DType' ('float' and 'int')
  169 |   Q = G * ~G*10*10;
      |              ^~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:176:27: note: candidate: 'template<class MatType, int Rows, int Cols, class DType> BLA::Matrix<Rows, Cols, DType> BLA::operator*(DType, const MatrixBase<MatType, Rows, Cols, DType>&)'
  176 | Matrix<Rows, Cols, DType> operator*(const DType k, const MatrixBase<MatType, Rows, Cols, DType> &mat)
      |                           ^~~~~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:176:27: note:   template argument deduction/substitution failed:
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-3900-igtl2t.od57r\sketch_jun29a\sketch_jun29a.ino:169:14: note:   mismatched types 'const BLA::MatrixBase<MatType, Rows, Cols, DType>' and 'int'
  169 |   Q = G * ~G*10*10;
      |              ^~

exit status 1

Compilation error: no match for 'operator*' (operand types are 'BLA::Matrix<2, 1>' and 'bool')

There are so many errors I don't know what to do. For errors that say can't multiply the matrix with a constant or Boolean Inverted Matrix, I can fix them by making new functions but I thought the library should have included it, the other errors lie in the ElementStorage.h, which I don't understand. Thank you. I don't understand why Im stucked and why does this library work for other people?

I don't know if it is your problem, but watch out for the "F" macro as a variable name.

1 Like

Hello, I noticed that earlier and changed all the F into MatrixF. The error is still enormous

In file included from c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/BasicLinearAlgebra.h:10,
                 from C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-16468-1ujw8iy.w4q4f\sketch_jun29b\sketch_jun29b.ino:25:
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/ElementStorage.h:136:43: error: expected unqualified-id before 'const'
  136 |     HorizontalConcat<LeftType, RightType>(const LeftType &l, const RightType &r) : left(l), right(r) {}
      |                                           ^~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/ElementStorage.h:136:43: error: expected ')' before 'const'
  136 |     HorizontalConcat<LeftType, RightType>(const LeftType &l, const RightType &r) : left(l), right(r) {}
      |                                          ~^~~~~
      |                                           )
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/ElementStorage.h:151:41: error: expected unqualified-id before 'const'
  151 |     VerticalConcat<TopType, BottomType>(const TopType &t, const BottomType &b) : top(t), bottom(b) {}
      |                                         ^~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/ElementStorage.h:151:41: error: expected ')' before 'const'
  151 |     VerticalConcat<TopType, BottomType>(const TopType &t, const BottomType &b) : top(t), bottom(b) {}
      |                                        ~^~~~~
      |                                         )
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-16468-1ujw8iy.w4q4f\sketch_jun29b\sketch_jun29b.ino: In function 'void kalman_2d()':
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-16468-1ujw8iy.w4q4f\sketch_jun29b\sketch_jun29b.ino:39:9: error: no match for 'operator*' (operand types are 'BLA::Matrix<2, 1>' and 'bool')
   39 |   K=P*~H*Invert(L);
      |     ~~~~^~~~~~~~~~
      |      |         |
      |      |         bool
      |      BLA::Matrix<2, 1>
In file included from c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/BasicLinearAlgebra.h:181:
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:10:35: note: candidate: 'template<class MatAType, class MatBType, int MatARows, int MatACols, int MatBCols, class DType> BLA::Matrix<MatARows, MatBCols, DType> BLA::operator*(const MatrixBase<MatAType, MatARows, MatACols, DType>&, const MatrixBase<MatBType, MatACols, MatBCols, DType>&)'
   10 | Matrix<MatARows, MatBCols, DType> operator*(const MatrixBase<MatAType, MatARows, MatACols, DType> &matA,
      |                                   ^~~~~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:10:35: note:   template argument deduction/substitution failed:
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-16468-1ujw8iy.w4q4f\sketch_jun29b\sketch_jun29b.ino:39:18: note:   mismatched types 'const BLA::MatrixBase<MatBType, MatACols, MatBCols, DType>' and 'bool'
   39 |   K=P*~H*Invert(L);
      |                  ^
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:168:27: note: candidate: 'template<class MatType, int Rows, int Cols, class DType> BLA::Matrix<Rows, Cols, DType> BLA::operator*(const MatrixBase<MatType, Rows, Cols, DType>&, DType)'
  168 | Matrix<Rows, Cols, DType> operator*(const MatrixBase<MatType, Rows, Cols, DType> &mat, const DType k)
      |                           ^~~~~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:168:27: note:   template argument deduction/substitution failed:
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-16468-1ujw8iy.w4q4f\sketch_jun29b\sketch_jun29b.ino:39:18: note:   deduced conflicting types for parameter 'DType' ('float' and 'bool')
   39 |   K=P*~H*Invert(L);
      |                  ^
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:176:27: note: candidate: 'template<class MatType, int Rows, int Cols, class DType> BLA::Matrix<Rows, Cols, DType> BLA::operator*(DType, const MatrixBase<MatType, Rows, Cols, DType>&)'
  176 | Matrix<Rows, Cols, DType> operator*(const DType k, const MatrixBase<MatType, Rows, Cols, DType> &mat)
      |                           ^~~~~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:176:27: note:   template argument deduction/substitution failed:
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-16468-1ujw8iy.w4q4f\sketch_jun29b\sketch_jun29b.ino:39:18: note:   mismatched types 'const BLA::MatrixBase<MatType, Rows, Cols, DType>' and 'bool'
   39 |   K=P*~H*Invert(L);
      |                  ^
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-16468-1ujw8iy.w4q4f\sketch_jun29b\sketch_jun29b.ino: In function 'void setup()':
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-16468-1ujw8iy.w4q4f\sketch_jun29b\sketch_jun29b.ino:169:13: error: no match for 'operator*' (operand types are 'BLA::Matrix<2, 2>' and 'int')
  169 |   Q = G * ~G*10*10;
      |       ~~~~~~^~~
      |         |    |
      |         |    int
      |         BLA::Matrix<2, 2>
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:10:35: note: candidate: 'template<class MatAType, class MatBType, int MatARows, int MatACols, int MatBCols, class DType> BLA::Matrix<MatARows, MatBCols, DType> BLA::operator*(const MatrixBase<MatAType, MatARows, MatACols, DType>&, const MatrixBase<MatBType, MatACols, MatBCols, DType>&)'
   10 | Matrix<MatARows, MatBCols, DType> operator*(const MatrixBase<MatAType, MatARows, MatACols, DType> &matA,
      |                                   ^~~~~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:10:35: note:   template argument deduction/substitution failed:
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-16468-1ujw8iy.w4q4f\sketch_jun29b\sketch_jun29b.ino:169:14: note:   mismatched types 'const BLA::MatrixBase<MatBType, MatACols, MatBCols, DType>' and 'int'
  169 |   Q = G * ~G*10*10;
      |              ^~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:168:27: note: candidate: 'template<class MatType, int Rows, int Cols, class DType> BLA::Matrix<Rows, Cols, DType> BLA::operator*(const MatrixBase<MatType, Rows, Cols, DType>&, DType)'
  168 | Matrix<Rows, Cols, DType> operator*(const MatrixBase<MatType, Rows, Cols, DType> &mat, const DType k)
      |                           ^~~~~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:168:27: note:   template argument deduction/substitution failed:
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-16468-1ujw8iy.w4q4f\sketch_jun29b\sketch_jun29b.ino:169:14: note:   deduced conflicting types for parameter 'DType' ('float' and 'int')
  169 |   Q = G * ~G*10*10;
      |              ^~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:176:27: note: candidate: 'template<class MatType, int Rows, int Cols, class DType> BLA::Matrix<Rows, Cols, DType> BLA::operator*(DType, const MatrixBase<MatType, Rows, Cols, DType>&)'
  176 | Matrix<Rows, Cols, DType> operator*(const DType k, const MatrixBase<MatType, Rows, Cols, DType> &mat)
      |                           ^~~~~~~~
c:\Users\Admin\Documents\Arduino\libraries\BasicLinearAlgebra/impl/BasicLinearAlgebra.h:176:27: note:   template argument deduction/substitution failed:
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2024529-16468-1ujw8iy.w4q4f\sketch_jun29b\sketch_jun29b.ino:169:14: note:   mismatched types 'const BLA::MatrixBase<MatType, Rows, Cols, DType>' and 'int'
  169 |   Q = G * ~G*10*10;
      |              ^~

exit status 1

Compilation error: no match for 'operator*' (operand types are 'BLA::Matrix<2, 1>' and 'bool')

In case you need the new code:

/*
The contents of this code and instructions are the intellectual property of Carbon Aeronautics. 
The text and figures in this code and instructions are licensed under a Creative Commons Attribution - Noncommercial - ShareAlike 4.0 International Public Licence. 
This license lets you remix, adapt, and build upon your work non-commercially, as long as you credit Carbon Aeronautics 
(but not in any way that suggests that we endorse you or your use of the work) and license your new creations under the identical terms.
This code and instruction is provided "As Is” without any further warranty. Neither Carbon Aeronautics or the author has any liability to any person or entity 
with respect to any loss or damage caused or declared to be caused directly or indirectly by the instructions contained in this code or by 
the software and hardware described in it. As Carbon Aeronautics has no control over the use, setup, assembly, modification or misuse of the hardware, 
software and information described in this manual, no liability shall be assumed nor accepted for any resulting damage or injury. 
By the act of copying, use, setup or assembly, the user accepts all resulting liability.

1.0  18 February 2023 -  initial release
*/
#include <Wire.h>
float RateRoll, RatePitch, RateYaw;
float AngleRoll, AnglePitch;
float AccX, AccY, AccZ;
float AccZInertial;
float LoopTimer;
uint16_t dig_T1, dig_P1;
int16_t  dig_T2, dig_T3, dig_P2, dig_P3, dig_P4, dig_P5;
int16_t  dig_P6, dig_P7, dig_P8, dig_P9; 
float AltitudeBarometer, AltitudeBarometerStartUp;
int RateCalibrationNumber;
#include <BasicLinearAlgebra.h>
using namespace BLA;
float AltitudeKalman, VelocityVerticalKalman;
BLA::Matrix<2,2> MatrixF; BLA::Matrix<2,1> G;
BLA::Matrix<2,2> P; BLA::Matrix<2,2> Q;
BLA::Matrix<2,1> S; BLA::Matrix<1,2> H;
BLA::Matrix<2,2> I; BLA::Matrix<1,1> Acc;
BLA::Matrix<2,1> K; BLA::Matrix<1,1> R;
BLA::Matrix<1,1> L; BLA::Matrix<1,1> M;
void kalman_2d(void){
  Acc = {AccZInertial};
  S=MatrixF*S+G*Acc;
  P=MatrixF*P*~MatrixF+Q;
  L=H*P*~H+R;
  K=P*~H*Invert(L);
  M={AltitudeBarometer};
  S=S+K*(M-H*S);
  AltitudeKalman=S(0,0); 
  VelocityVerticalKalman=S(1,0); 
  P=(I-K*H)*P;
}
void barometer_signals(void){
  Wire.beginTransmission(0x76);
  Wire.write(0xF7);
  Wire.endTransmission();
  Wire.requestFrom(0x76,6);
  uint32_t press_msb = Wire.read();
  uint32_t press_lsb = Wire.read();
  uint32_t press_xlsb = Wire.read();
  uint32_t temp_msb = Wire.read();
  uint32_t temp_lsb = Wire.read();
  uint32_t temp_xlsb = Wire.read();
  unsigned long int adc_P = (press_msb << 12) | (press_lsb << 4) | (press_xlsb >>4);
  unsigned long int adc_T = (temp_msb << 12) | (temp_lsb << 4) | (temp_xlsb >>4);
  signed long int var1, var2;
  var1 = ((((adc_T >> 3) - ((signed long int )dig_T1 <<1)))* ((signed long int )dig_T2)) >> 11;
  var2 = (((((adc_T >> 4) - ((signed long int )dig_T1)) * ((adc_T>>4) - ((signed long int )dig_T1)))>> 12) * ((signed long int )dig_T3)) >> 14;
  signed long int t_fine = var1 + var2;
  unsigned long int p;
  var1 = (((signed long int )t_fine)>>1) - (signed long int )64000;
  var2 = (((var1>>2) * (var1>>2)) >> 11) * ((signed long int )dig_P6);
  var2 = var2 + ((var1*((signed long int )dig_P5)) <<1);
  var2 = (var2>>2)+(((signed long int )dig_P4) <<16);
  var1 = (((dig_P3 * (((var1>>2)*(var1>>2)) >> 13))>>3)+((((signed long int )dig_P2) * var1)>>1))>>18;
  var1 = ((((32768+var1))*((signed long int )dig_P1)) >>15);
  if (var1 == 0) { p=0;}    
  p = (((unsigned long int )(((signed long int ) 1048576)-adc_P)-(var2>>12)))*3125;
  if(p<0x80000000){ p = (p << 1) / ((unsigned long int ) var1);}
  else { p = (p / (unsigned long int )var1) * 2;  }
  var1 = (((signed long int )dig_P9) * ((signed long int ) (((p>>3) * (p>>3))>>13)))>>12;
  var2 = (((signed long int )(p>>2)) * ((signed long int )dig_P8))>>13;
  p = (unsigned long int)((signed long int )p + ((var1 + var2+ dig_P7) >> 4));
  double pressure=(double)p/100;
  AltitudeBarometer=44330*(1-pow(pressure/1013.25, 1/5.255))*100;
}
void gyro_signals(void) {
  Wire.beginTransmission(0x68);
  Wire.write(0x1A);
  Wire.write(0x05);
  Wire.endTransmission();
  Wire.beginTransmission(0x68);
  Wire.write(0x1C);
  Wire.write(0x10);
  Wire.endTransmission();
  Wire.beginTransmission(0x68);
  Wire.write(0x3B);
  Wire.endTransmission(); 
  Wire.requestFrom(0x68,6);
  int16_t AccXLSB = Wire.read() << 8 | Wire.read();
  int16_t AccYLSB = Wire.read() << 8 | Wire.read();
  int16_t AccZLSB = Wire.read() << 8 |  Wire.read();
  Wire.beginTransmission(0x68);
  Wire.write(0x1B); 
  Wire.write(0x8);
  Wire.endTransmission();                                                   
  Wire.beginTransmission(0x68);
  Wire.write(0x43);
  Wire.endTransmission();
  Wire.requestFrom(0x68,6);
  int16_t GyroX=Wire.read()<<8 | Wire.read();
  int16_t GyroY=Wire.read()<<8 | Wire.read();
  int16_t GyroZ=Wire.read()<<8 | Wire.read();
  RateRoll=(float)GyroX/65.5;
  RatePitch=(float)GyroY/65.5;
  RateYaw=(float)GyroZ/65.5;
  AccX=(float)AccXLSB/4096;
  AccY=(float)AccYLSB/4096;
  AccZ=(float)AccZLSB/4096;
  AngleRoll=atan(AccY/sqrt(AccX*AccX+AccZ*AccZ))*1/(3.142/180);
  AnglePitch=-atan(AccX/sqrt(AccY*AccY+AccZ*AccZ))*1/(3.142/180);
}
void setup() {
  Serial.begin(57600);
  pinMode(13, OUTPUT);
  digitalWrite(13, HIGH);
  Wire.setClock(400000);
  Wire.begin();
  delay(250);
  Wire.beginTransmission(0x68); 
  Wire.write(0x6B);
  Wire.write(0x00);
  Wire.endTransmission();
  Wire.beginTransmission(0x76);
  Wire.write(0xF4);
  Wire.write(0x57);
  Wire.endTransmission();   
  Wire.beginTransmission(0x76);
  Wire.write(0xF5); 
  Wire.write(0x14);
  Wire.endTransmission();   
  uint8_t data[24], i=0;
  Wire.beginTransmission(0x76);
  Wire.write(0x88);
  Wire.endTransmission();
  Wire.requestFrom(0x76,24);        
  while(Wire.available()){
    data[i] = Wire.read();
    i++;
  } 
  dig_T1 = (data[1] << 8) | data[0]; 
  dig_T2 = (data[3] << 8) | data[2];
  dig_T3 = (data[5] << 8) | data[4];
  dig_P1 = (data[7] << 8) | data[6]; 
  dig_P2 = (data[9] << 8) | data[8];
  dig_P3 = (data[11]<< 8) | data[10];
  dig_P4 = (data[13]<< 8) | data[12];
  dig_P5 = (data[15]<< 8) | data[14];
  dig_P6 = (data[17]<< 8) | data[16];
  dig_P7 = (data[19]<< 8) | data[18];
  dig_P8 = (data[21]<< 8) | data[20];
  dig_P9 = (data[23]<< 8) | data[22]; delay(250);
  for (RateCalibrationNumber=0; RateCalibrationNumber<2000; RateCalibrationNumber ++) {
    barometer_signals();
    AltitudeBarometerStartUp+=AltitudeBarometer; 
    delay(1); 
  }
  AltitudeBarometerStartUp/=2000;
  MatrixF = {1, 0.004,
            0, 1};  
  G = {0.5*0.004*0.004,
            0.004};
  H = {1, 0};
  I = {1, 0,
           0, 1};
  Q = G * ~G*10*10;
  R = {30*30};
  P = {0, 0,
           0, 0};
  S = {0,
           0};
           LoopTimer=micros();
}
void loop() {
 gyro_signals();
  AccZInertial=-sin(AnglePitch*(3.142/180))*AccX+cos(AnglePitch*(3.142/180))*sin(AngleRoll*(3.142/180))* AccY+cos(AnglePitch*(3.142/180))*cos(AngleRoll*(3.142/180))*AccZ;   
  AccZInertial=(AccZInertial-1)*9.81*100;
  barometer_signals();
  AltitudeBarometer-=AltitudeBarometerStartUp;
  kalman_2d();
  Serial.print("Altitude [cm]: ");
  Serial.print(AltitudeKalman);
  Serial.print(" Vertical velocity [cm/s]: ");
  Serial.println(VelocityVerticalKalman);
  while (micros() - LoopTimer < 4000); 
  LoopTimer=micros();                  
}

This is only a guess, but I think you shouldn't be getting bools The ~H should be transposing H, not logic testing it into booleans. Maybe there's some precedence issue in compound math statements and you might break the problem lines into single statements.

Also, take care with assumed floats vs ints vs double constants. The template codes have problems with mixed types.

This breaks up the calculations into a few steps and makes sure the arrays have matching types:

/*
The contents of this code and instructions are the intellectual property of Carbon Aeronautics. 
The text and figures in this code and instructions are licensed under a Creative Commons Attribution - Noncommercial - ShareAlike 4.0 International Public Licence. 
This license lets you remix, adapt, and build upon your work non-commercially, as long as you credit Carbon Aeronautics 
(but not in any way that suggests that we endorse you or your use of the work) and license your new creations under the identical terms.
This code and instruction is provided "As Is” without any further warranty. Neither Carbon Aeronautics or the author has any liability to any person or entity 
with respect to any loss or damage caused or declared to be caused directly or indirectly by the instructions contained in this code or by 
the software and hardware described in it. As Carbon Aeronautics has no control over the use, setup, assembly, modification or misuse of the hardware, 
software and information described in this manual, no liability shall be assumed nor accepted for any resulting damage or injury. 
By the act of copying, use, setup or assembly, the user accepts all resulting liability.

1.0  18 February 2023 -  initial release
*/
#include <Wire.h>
#include <BasicLinearAlgebra.h>
using namespace BLA;
float RateRoll, RatePitch, RateYaw;
float AngleRoll, AnglePitch;
float AccX, AccY, AccZ;
float AccZInertial;
float LoopTimer;
uint16_t dig_T1, dig_P1;
int16_t  dig_T2, dig_T3, dig_P2, dig_P3, dig_P4, dig_P5;
int16_t  dig_P6, dig_P7, dig_P8, dig_P9; 
float AltitudeBarometer, AltitudeBarometerStartUp;
int RateCalibrationNumber;
float AltitudeKalman, VelocityVerticalKalman;
BLA::Matrix<2,2> MatrixF; BLA::Matrix<2,1> G;
BLA::Matrix<2,2> P; BLA::Matrix<2,2> Q;
BLA::Matrix<2,1> S; BLA::Matrix<1,2> Hm;
BLA::Matrix<2,1> Ht;
BLA::Matrix<2,2> I; BLA::Matrix<1,1> Acc;
BLA::Matrix<2,1> K; BLA::Matrix<1,1> R;
BLA::Matrix<1,1> L; BLA::Matrix<1,1> M;
BLA::Matrix<1,1> Li;
void kalman_2d(void){
  Acc = {AccZInertial};
  S=MatrixF*S+G*Acc;
  P=MatrixF*P*~MatrixF+Q;
  Ht = ~Hm;
  L=Hm*P*Ht+R;
  Li = Invert(L);
  K=P*Ht*Li;
  M={AltitudeBarometer};
  S=S+K*(M-Hm*S);
  AltitudeKalman=S(0,0); 
  VelocityVerticalKalman=S(1,0); 
  P=(I-K*Hm)*P;
}
void barometer_signals(void){
  Wire.beginTransmission(0x76);
  Wire.write(0xF7);
  Wire.endTransmission();
  Wire.requestFrom(0x76,6);
  uint32_t press_msb = Wire.read();
  uint32_t press_lsb = Wire.read();
  uint32_t press_xlsb = Wire.read();
  uint32_t temp_msb = Wire.read();
  uint32_t temp_lsb = Wire.read();
  uint32_t temp_xlsb = Wire.read();
  unsigned long int adc_P = (press_msb << 12) | (press_lsb << 4) | (press_xlsb >>4);
  unsigned long int adc_T = (temp_msb << 12) | (temp_lsb << 4) | (temp_xlsb >>4);
  signed long int var1, var2;
  var1 = ((((adc_T >> 3) - ((signed long int )dig_T1 <<1)))* ((signed long int )dig_T2)) >> 11;
  var2 = (((((adc_T >> 4) - ((signed long int )dig_T1)) * ((adc_T>>4) - ((signed long int )dig_T1)))>> 12) * ((signed long int )dig_T3)) >> 14;
  signed long int t_fine = var1 + var2;
  unsigned long int p;
  var1 = (((signed long int )t_fine)>>1) - (signed long int )64000;
  var2 = (((var1>>2) * (var1>>2)) >> 11) * ((signed long int )dig_P6);
  var2 = var2 + ((var1*((signed long int )dig_P5)) <<1);
  var2 = (var2>>2)+(((signed long int )dig_P4) <<16);
  var1 = (((dig_P3 * (((var1>>2)*(var1>>2)) >> 13))>>3)+((((signed long int )dig_P2) * var1)>>1))>>18;
  var1 = ((((32768+var1))*((signed long int )dig_P1)) >>15);
  if (var1 == 0) { p=0;}    
  p = (((unsigned long int )(((signed long int ) 1048576)-adc_P)-(var2>>12)))*3125;
  if(p<0x80000000){ p = (p << 1) / ((unsigned long int ) var1);}
  else { p = (p / (unsigned long int )var1) * 2;  }
  var1 = (((signed long int )dig_P9) * ((signed long int ) (((p>>3) * (p>>3))>>13)))>>12;
  var2 = (((signed long int )(p>>2)) * ((signed long int )dig_P8))>>13;
  p = (unsigned long int)((signed long int )p + ((var1 + var2+ dig_P7) >> 4));
  double pressure=(double)p/100;
  AltitudeBarometer=44330*(1-pow(pressure/1013.25, 1/5.255))*100;
}
void gyro_signals(void) {
  Wire.beginTransmission(0x68);
  Wire.write(0x1A);
  Wire.write(0x05);
  Wire.endTransmission();
  Wire.beginTransmission(0x68);
  Wire.write(0x1C);
  Wire.write(0x10);
  Wire.endTransmission();
  Wire.beginTransmission(0x68);
  Wire.write(0x3B);
  Wire.endTransmission(); 
  Wire.requestFrom(0x68,6);
  int16_t AccXLSB = Wire.read() << 8 | Wire.read();
  int16_t AccYLSB = Wire.read() << 8 | Wire.read();
  int16_t AccZLSB = Wire.read() << 8 |  Wire.read();
  Wire.beginTransmission(0x68);
  Wire.write(0x1B); 
  Wire.write(0x8);
  Wire.endTransmission();                                                   
  Wire.beginTransmission(0x68);
  Wire.write(0x43);
  Wire.endTransmission();
  Wire.requestFrom(0x68,6);
  int16_t GyroX=Wire.read()<<8 | Wire.read();
  int16_t GyroY=Wire.read()<<8 | Wire.read();
  int16_t GyroZ=Wire.read()<<8 | Wire.read();
  RateRoll=(float)GyroX/65.5;
  RatePitch=(float)GyroY/65.5;
  RateYaw=(float)GyroZ/65.5;
  AccX=(float)AccXLSB/4096;
  AccY=(float)AccYLSB/4096;
  AccZ=(float)AccZLSB/4096;
  AngleRoll=atan(AccY/sqrt(AccX*AccX+AccZ*AccZ))*1/(3.142/180);
  AnglePitch=-atan(AccX/sqrt(AccY*AccY+AccZ*AccZ))*1/(3.142/180);
}
void setup() {
  Serial.begin(57600);
  pinMode(13, OUTPUT);
  digitalWrite(13, HIGH);
  Wire.setClock(400000);
  Wire.begin();
  delay(250);
  Wire.beginTransmission(0x68); 
  Wire.write(0x6B);
  Wire.write(0x00);
  Wire.endTransmission();
  Wire.beginTransmission(0x76);
  Wire.write(0xF4);
  Wire.write(0x57);
  Wire.endTransmission();   
  Wire.beginTransmission(0x76);
  Wire.write(0xF5); 
  Wire.write(0x14);
  Wire.endTransmission();   
  uint8_t data[24], i=0;
  Wire.beginTransmission(0x76);
  Wire.write(0x88);
  Wire.endTransmission();
  Wire.requestFrom(0x76,24);        
  while(Wire.available()){
    data[i] = Wire.read();
    i++;
  } 
  dig_T1 = (data[1] << 8) | data[0]; 
  dig_T2 = (data[3] << 8) | data[2];
  dig_T3 = (data[5] << 8) | data[4];
  dig_P1 = (data[7] << 8) | data[6]; 
  dig_P2 = (data[9] << 8) | data[8];
  dig_P3 = (data[11]<< 8) | data[10];
  dig_P4 = (data[13]<< 8) | data[12];
  dig_P5 = (data[15]<< 8) | data[14];
  dig_P6 = (data[17]<< 8) | data[16];
  dig_P7 = (data[19]<< 8) | data[18];
  dig_P8 = (data[21]<< 8) | data[20];
  dig_P9 = (data[23]<< 8) | data[22]; delay(250);
  for (RateCalibrationNumber=0; RateCalibrationNumber<2000; RateCalibrationNumber ++) {
    barometer_signals();
    AltitudeBarometerStartUp+=AltitudeBarometer; 
    delay(1); 
  }
  AltitudeBarometerStartUp/=2000;
  MatrixF = {1, 0.004,
            0, 1};  
  G = {0.5*0.004*0.004,
            0.004};
  Hm = {1.0, 0.0};
  I = {1, 0,
           0, 1};
  Q = G * ~G*(float)(10*10);
  R = {30*30.0};
  P = {0.0, 0,
           0, 0};
  S = {0.0,
           0};
           LoopTimer=micros();
}
void loop() {
 gyro_signals();
  AccZInertial=-sin(AnglePitch*(3.142/180))*AccX+cos(AnglePitch*(3.142/180))*sin(AngleRoll*(3.142/180))* AccY+cos(AnglePitch*(3.142/180))*cos(AngleRoll*(3.142/180))*AccZ;   
  AccZInertial=(AccZInertial-1)*9.81*100;
  barometer_signals();
  AltitudeBarometer-=AltitudeBarometerStartUp;
  kalman_2d();
  Serial.print("Altitude [cm]: ");
  Serial.print(AltitudeKalman);
  Serial.print(" Vertical velocity [cm/s]: ");
  Serial.println(VelocityVerticalKalman);
  while (micros() - LoopTimer < 4000); 
  LoopTimer=micros();                  
}

It compiles and runs on a bare Uno for me.

I am using Arduino IDE 1.8.19 the version that is proven to work very well.
Sure the IDE 2.X made a lot of progress. Me personal I do not use it.

I am using ESP32-core 2.0.16.

espressif made breaking changes with ESP32-core-version 3.X

Second code compiles for Arduino Uno for me too.

It does compile for ESP32 Dev Module too

From this file-path
C:\Users\Admin\AppData\Local\Temp.arduinoIDE-unsaved2024529-16468-1ujw8iy.w4q4f\sketch_jun29b\sketch_jun29b.ino

local/Temp\ dot arduino-ide unsaved etc.

I guess you installed the arduino-IDE in a great hurry and maybe some things went wrong.

compile log

C:\Arduino-Pure-Portable\arduino-1.8.19\arduino-builder -dump-prefs -logger=machine -hardware C:\Arduino-Pure-Portable\arduino-1.8.19\hardware -hardware C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages -tools C:\Arduino-Pure-Portable\arduino-1.8.19\tools-builder -tools C:\Arduino-Pure-Portable\arduino-1.8.19\hardware\tools\avr -tools C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages -libraries C:\Arduino-Pure-Portable\arduino-1.8.19\portable\sketchbook\libraries -fqbn=esp32:esp32:esp32:JTAGAdapter=default,PSRAM=disabled,PartitionScheme=default,CPUFreq=240,FlashMode=qio,FlashFreq=80,FlashSize=4M,UploadSpeed=921600,LoopCore=1,EventsCore=1,DebugLevel=none,EraseFlash=none -ide-version=10819 -build-path C:\Users\dipl-\AppData\Local\Temp\arduino_build_429768 -warnings=all -build-cache C:\Users\dipl-\AppData\Local\Temp\arduino_cache_477148 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.mklittlefs.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\mklittlefs\3.0.0-gnu12-dc7f933 -prefs=runtime.tools.mklittlefs-3.0.0-gnu12-dc7f933.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\mklittlefs\3.0.0-gnu12-dc7f933 -prefs=runtime.tools.riscv32-esp-elf-gdb.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\riscv32-esp-elf-gdb\11.2_20220823 -prefs=runtime.tools.riscv32-esp-elf-gdb-11.2_20220823.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\riscv32-esp-elf-gdb\11.2_20220823 -prefs=runtime.tools.esptool_py.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\esptool_py\4.5.1 -prefs=runtime.tools.esptool_py-4.5.1.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\esptool_py\4.5.1 -prefs=runtime.tools.mkspiffs.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\mkspiffs\0.2.3 -prefs=runtime.tools.mkspiffs-0.2.3.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\mkspiffs\0.2.3 -prefs=runtime.tools.dfu-util.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\arduino\tools\dfu-util\0.11.0-arduino5 -prefs=runtime.tools.dfu-util-0.11.0-arduino5.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\arduino\tools\dfu-util\0.11.0-arduino5 -prefs=runtime.tools.xtensa-esp32s2-elf-gcc.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp32s2-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.xtensa-esp32s2-elf-gcc-esp-2021r2-patch5-8.4.0.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp32s2-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.xtensa-esp32-elf-gcc.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.xtensa-esp32-elf-gcc-esp-2021r2-patch5-8.4.0.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.riscv32-esp-elf-gcc.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\riscv32-esp-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.riscv32-esp-elf-gcc-esp-2021r2-patch5-8.4.0.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\riscv32-esp-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.xtensa-esp32s3-elf-gcc.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp32s3-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.xtensa-esp32s3-elf-gcc-esp-2021r2-patch5-8.4.0.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp32s3-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.xtensa-esp-elf-gdb.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp-elf-gdb\11.2_20220823 -prefs=runtime.tools.xtensa-esp-elf-gdb-11.2_20220823.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp-elf-gdb\11.2_20220823 -prefs=runtime.tools.openocd-esp32.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\openocd-esp32\v0.12.0-esp32-20230921 -prefs=runtime.tools.openocd-esp32-v0.12.0-esp32-20230921.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\openocd-esp32\v0.12.0-esp32-20230921 -verbose C:\Arduino-Pure-Portable\arduino-1.8.19\portable\sketchbook\Vermil-ESP32-001\Vermil-ESP32-001.ino
C:\Arduino-Pure-Portable\arduino-1.8.19\arduino-builder -compile -logger=machine -hardware C:\Arduino-Pure-Portable\arduino-1.8.19\hardware -hardware C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages -tools C:\Arduino-Pure-Portable\arduino-1.8.19\tools-builder -tools C:\Arduino-Pure-Portable\arduino-1.8.19\hardware\tools\avr -tools C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages -libraries C:\Arduino-Pure-Portable\arduino-1.8.19\portable\sketchbook\libraries -fqbn=esp32:esp32:esp32:JTAGAdapter=default,PSRAM=disabled,PartitionScheme=default,CPUFreq=240,FlashMode=qio,FlashFreq=80,FlashSize=4M,UploadSpeed=921600,LoopCore=1,EventsCore=1,DebugLevel=none,EraseFlash=none -ide-version=10819 -build-path C:\Users\dipl-\AppData\Local\Temp\arduino_build_429768 -warnings=all -build-cache C:\Users\dipl-\AppData\Local\Temp\arduino_cache_477148 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.mklittlefs.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\mklittlefs\3.0.0-gnu12-dc7f933 -prefs=runtime.tools.mklittlefs-3.0.0-gnu12-dc7f933.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\mklittlefs\3.0.0-gnu12-dc7f933 -prefs=runtime.tools.riscv32-esp-elf-gdb.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\riscv32-esp-elf-gdb\11.2_20220823 -prefs=runtime.tools.riscv32-esp-elf-gdb-11.2_20220823.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\riscv32-esp-elf-gdb\11.2_20220823 -prefs=runtime.tools.esptool_py.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\esptool_py\4.5.1 -prefs=runtime.tools.esptool_py-4.5.1.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\esptool_py\4.5.1 -prefs=runtime.tools.mkspiffs.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\mkspiffs\0.2.3 -prefs=runtime.tools.mkspiffs-0.2.3.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\mkspiffs\0.2.3 -prefs=runtime.tools.dfu-util.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\arduino\tools\dfu-util\0.11.0-arduino5 -prefs=runtime.tools.dfu-util-0.11.0-arduino5.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\arduino\tools\dfu-util\0.11.0-arduino5 -prefs=runtime.tools.xtensa-esp32s2-elf-gcc.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp32s2-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.xtensa-esp32s2-elf-gcc-esp-2021r2-patch5-8.4.0.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp32s2-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.xtensa-esp32-elf-gcc.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.xtensa-esp32-elf-gcc-esp-2021r2-patch5-8.4.0.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.riscv32-esp-elf-gcc.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\riscv32-esp-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.riscv32-esp-elf-gcc-esp-2021r2-patch5-8.4.0.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\riscv32-esp-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.xtensa-esp32s3-elf-gcc.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp32s3-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.xtensa-esp32s3-elf-gcc-esp-2021r2-patch5-8.4.0.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp32s3-elf-gcc\esp-2021r2-patch5-8.4.0 -prefs=runtime.tools.xtensa-esp-elf-gdb.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp-elf-gdb\11.2_20220823 -prefs=runtime.tools.xtensa-esp-elf-gdb-11.2_20220823.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\xtensa-esp-elf-gdb\11.2_20220823 -prefs=runtime.tools.openocd-esp32.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\openocd-esp32\v0.12.0-esp32-20230921 -prefs=runtime.tools.openocd-esp32-v0.12.0-esp32-20230921.path=C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\tools\openocd-esp32\v0.12.0-esp32-20230921 -verbose C:\Arduino-Pure-Portable\arduino-1.8.19\portable\sketchbook\Vermil-ESP32-001\Vermil-ESP32-001.ino
Using board 'esp32' from platform in folder: C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\hardware\esp32\2.0.16
Using core 'esp32' from platform in folder: C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\hardware\esp32\2.0.16

esptool.py v4.5.1
Creating esp32 image...
Merged 1 ELF section
Successfully created esp32 image.
cmd /c if exist "C:\\Arduino-Pure-Portable\\arduino-1.8.19\\portable\\sketchbook\\Vermil-ESP32-001\\build_opt.h" COPY /y "C:\\Arduino-Pure-Portable\\arduino-1.8.19\\portable\\sketchbook\\Vermil-ESP32-001\\build_opt.h" "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768\\build_opt.h"
cmd /c if not exist "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768\\build_opt.h" type nul > "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768\\build_opt.h"
cmd /c type nul > "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768/file_opts"
Detecting libraries used...
Alternatives for Wire.h: [Wire@2.0.0]
ResolveLibrary(Wire.h)
  -> candidates: [Wire@2.0.0]
Alternatives for BasicLinearAlgebra.h: [BasicLinearAlgebra@3.7]
ResolveLibrary(BasicLinearAlgebra.h)
  -> candidates: [BasicLinearAlgebra@3.7]
Using cached library dependencies for file: C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\hardware\esp32\2.0.16\libraries\Wire\src\Wire.cpp
Generating function prototypes...
"C:\\Arduino-Pure-Portable\\arduino-1.8.19\\tools-builder\\ctags\\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768\\preproc\\ctags_target_for_gcc_minus_e.cpp"
Compiling sketch...
Compiling libraries...
Compiling library "Wire"
Using previously compiled file: C:\Users\dipl-\AppData\Local\Temp\arduino_build_429768\libraries\Wire\Wire.cpp.o
Compiling library "BasicLinearAlgebra"
Compiling core...
cmd /c echo -DARDUINO_CORE_BUILD > "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768/file_opts"
Using precompiled core: C:\Users\dipl-\AppData\Local\Temp\arduino_cache_477148\core\core_e831a1a52c5cb43349b082786b201935.a
cmd /c type nul > "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768/file_opts"
Linking everything together...
"C:\\Arduino-Pure-Portable\\arduino-1.8.19\\portable\\packages\\esp32\\tools\\xtensa-esp32-elf-gcc\\esp-2021r2-patch5-8.4.0/bin/xtensa-esp32-elf-g++" "-Wl,--Map=C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768/Vermil-ESP32-001.ino.map" "-LC:\\Arduino-Pure-Portable\\arduino-1.8.19\\portable\\packages\\esp32\\hardware\\esp32\\2.0.16/tools/sdk/esp32/lib" "-LC:\\Arduino-Pure-Portable\\arduino-1.8.19\\portable\\packages\\esp32\\hardware\\esp32\\2.0.16/tools/sdk/esp32/ld" "-LC:\\Arduino-Pure-Portable\\arduino-1.8.19\\portable\\packages\\esp32\\hardware\\esp32\\2.0.16/tools/sdk/esp32/qio_qspi" -T esp32.rom.redefined.ld -T memory.ld -T sections.ld -T esp32.rom.ld -T esp32.rom.api.ld -T esp32.rom.libgcc.ld -T esp32.rom.newlib-data.ld -T esp32.rom.syscalls.ld -T esp32.peripherals.ld -mlongcalls -Wno-frame-address -Wl,--cref -Wl,--gc-sections -fno-rtti -fno-lto -Wl,--wrap=esp_log_write -Wl,--wrap=esp_log_writev -Wl,--wrap=log_printf -u ld_include_hli_vectors_bt -u _Z5setupv -u _Z4loopv -u esp_app_desc -u pthread_include_pthread_impl -u pthread_include_pthread_cond_var_impl -u pthread_include_pthread_local_storage_impl -u pthread_include_pthread_rwlock_impl -u include_esp_phy_override -u ld_include_highint_hdl -u start_app -u start_app_other_cores -u __ubsan_include -Wl,--wrap=longjmp -u __assert_func -u vfs_include_syscalls_impl -Wl,--undefined=uxTopUsedPriority -u app_main -u newlib_include_heap_impl -u newlib_include_syscalls_impl -u newlib_include_pthread_impl -u newlib_include_assert_impl -u __cxa_guard_dummy -DESP32 -DCORE_DEBUG_LEVEL=0 -DARDUINO_RUNNING_CORE=1 -DARDUINO_EVENT_RUNNING_CORE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -Wl,--start-group "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768\\sketch\\Vermil-ESP32-001.ino.cpp.o" "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768\\libraries\\Wire\\Wire.cpp.o" "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_cache_477148\\core\\core_e831a1a52c5cb43349b082786b201935.a" -lesp_ringbuf -lefuse -lesp_ipc -ldriver -lesp_pm -lmbedtls -lapp_update -lbootloader_support -lspi_flash -lnvs_flash -lpthread -lesp_gdbstub -lespcoredump -lesp_phy -lesp_system -lesp_rom -lhal -lvfs -lesp_eth -ltcpip_adapter -lesp_netif -lesp_event -lwpa_supplicant -lesp_wifi -lconsole -llwip -llog -lheap -lsoc -lesp_hw_support -lxtensa -lesp_common -lesp_timer -lfreertos -lnewlib -lcxx -lapp_trace -lasio -lbt -lcbor -lunity -lcmock -lcoap -lnghttp -lesp-tls -lesp_adc_cal -lesp_hid -ltcp_transport -lesp_http_client -lesp_http_server -lesp_https_ota -lesp_https_server -lesp_lcd -lprotobuf-c -lprotocomm -lmdns -lesp_local_ctrl -lsdmmc -lesp_serial_slave_link -lesp_websocket_client -lexpat -lwear_levelling -lfatfs -lfreemodbus -ljsmn -ljson -llibsodium -lmqtt -lopenssl -lperfmon -lspiffs -lulp -lwifi_provisioning -lrmaker_common -lesp_diagnostics -lrtc_store -lesp_insights -ljson_parser -ljson_generator -lesp_schedule -lespressif__esp_secure_cert_mgr -lesp_rainmaker -lgpio_button -lqrcode -lws2812_led -lesp32-camera -lesp_littlefs -lespressif__esp-dsp -lfb_gfx -lasio -lcmock -lunity -lcoap -lesp_lcd -lesp_websocket_client -lexpat -lfreemodbus -ljsmn -llibsodium -lperfmon -lesp_adc_cal -lesp_hid -lfatfs -lwear_levelling -lopenssl -lspiffs -lesp_insights -lcbor -lesp_diagnostics -lrtc_store -lesp_rainmaker -lesp_local_ctrl -lesp_https_server -lwifi_provisioning -lprotocomm -lbt -lbtdm_app -lprotobuf-c -lmdns -ljson -ljson_parser -ljson_generator -lesp_schedule -lespressif__esp_secure_cert_mgr -lqrcode -lrmaker_common -lmqtt -lcat_face_detect -lhuman_face_detect -lcolor_detect -lmfn -ldl -lesp_ringbuf -lefuse -lesp_ipc -ldriver -lesp_pm -lmbedtls -lapp_update -lbootloader_support -lspi_flash -lnvs_flash -lpthread -lesp_gdbstub -lespcoredump -lesp_phy -lesp_system -lesp_rom -lhal -lvfs -lesp_eth -ltcpip_adapter -lesp_netif -lesp_event -lwpa_supplicant -lesp_wifi -lconsole -llwip -llog -lheap -lsoc -lesp_hw_support -lxtensa -lesp_common -lesp_timer -lfreertos -lnewlib -lcxx -lapp_trace -lnghttp -lesp-tls -ltcp_transport -lesp_http_client -lesp_http_server -lesp_https_ota -lsdmmc -lesp_serial_slave_link -lulp -lmbedtls_2 -lmbedcrypto -lmbedx509 -lcoexist -lcore -lespnow -lmesh -lnet80211 -lpp -lsmartconfig -lwapi -lesp_ringbuf -lefuse -lesp_ipc -ldriver -lesp_pm -lmbedtls -lapp_update -lbootloader_support -lspi_flash -lnvs_flash -lpthread -lesp_gdbstub -lespcoredump -lesp_phy -lesp_system -lesp_rom -lhal -lvfs -lesp_eth -ltcpip_adapter -lesp_netif -lesp_event -lwpa_supplicant -lesp_wifi -lconsole -llwip -llog -lheap -lsoc -lesp_hw_support -lxtensa -lesp_common -lesp_timer -lfreertos -lnewlib -lcxx -lapp_trace -lnghttp -lesp-tls -ltcp_transport -lesp_http_client -lesp_http_server -lesp_https_ota -lsdmmc -lesp_serial_slave_link -lulp -lmbedtls_2 -lmbedcrypto -lmbedx509 -lcoexist -lcore -lespnow -lmesh -lnet80211 -lpp -lsmartconfig -lwapi -lesp_ringbuf -lefuse -lesp_ipc -ldriver -lesp_pm -lmbedtls -lapp_update -lbootloader_support -lspi_flash -lnvs_flash -lpthread -lesp_gdbstub -lespcoredump -lesp_phy -lesp_system -lesp_rom -lhal -lvfs -lesp_eth -ltcpip_adapter -lesp_netif -lesp_event -lwpa_supplicant -lesp_wifi -lconsole -llwip -llog -lheap -lsoc -lesp_hw_support -lxtensa -lesp_common -lesp_timer -lfreertos -lnewlib -lcxx -lapp_trace -lnghttp -lesp-tls -ltcp_transport -lesp_http_client -lesp_http_server -lesp_https_ota -lsdmmc -lesp_serial_slave_link -lulp -lmbedtls_2 -lmbedcrypto -lmbedx509 -lcoexist -lcore -lespnow -lmesh -lnet80211 -lpp -lsmartconfig -lwapi -lesp_ringbuf -lefuse -lesp_ipc -ldriver -lesp_pm -lmbedtls -lapp_update -lbootloader_support -lspi_flash -lnvs_flash -lpthread -lesp_gdbstub -lespcoredump -lesp_phy -lesp_system -lesp_rom -lhal -lvfs -lesp_eth -ltcpip_adapter -lesp_netif -lesp_event -lwpa_supplicant -lesp_wifi -lconsole -llwip -llog -lheap -lsoc -lesp_hw_support -lxtensa -lesp_common -lesp_timer -lfreertos -lnewlib -lcxx -lapp_trace -lnghttp -lesp-tls -ltcp_transport -lesp_http_client -lesp_http_server -lesp_https_ota -lsdmmc -lesp_serial_slave_link -lulp -lmbedtls_2 -lmbedcrypto -lmbedx509 -lcoexist -lcore -lespnow -lmesh -lnet80211 -lpp -lsmartconfig -lwapi -lesp_ringbuf -lefuse -lesp_ipc -ldriver -lesp_pm -lmbedtls -lapp_update -lbootloader_support -lspi_flash -lnvs_flash -lpthread -lesp_gdbstub -lespcoredump -lesp_phy -lesp_system -lesp_rom -lhal -lvfs -lesp_eth -ltcpip_adapter -lesp_netif -lesp_event -lwpa_supplicant -lesp_wifi -lconsole -llwip -llog -lheap -lsoc -lesp_hw_support -lxtensa -lesp_common -lesp_timer -lfreertos -lnewlib -lcxx -lapp_trace -lnghttp -lesp-tls -ltcp_transport -lesp_http_client -lesp_http_server -lesp_https_ota -lsdmmc -lesp_serial_slave_link -lulp -lmbedtls_2 -lmbedcrypto -lmbedx509 -lcoexist -lcore -lespnow -lmesh -lnet80211 -lpp -lsmartconfig -lwapi -lphy -lrtc -lesp_phy -lphy -lrtc -lesp_phy -lphy -lrtc -lxt_hal -lc -lm -lnewlib -lstdc++ -lpthread -lgcc -lcxx -Wl,--end-group -Wl,-EL -o "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768/Vermil-ESP32-001.ino.elf"
"C:\\Arduino-Pure-Portable\\arduino-1.8.19\\portable\\packages\\esp32\\tools\\esptool_py\\4.5.1/esptool.exe" --chip esp32 elf2image --flash_mode dio --flash_freq 80m --flash_size 4MB --elf-sha256-offset 0xb0 -o "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768/Vermil-ESP32-001.ino.bin" "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768/Vermil-ESP32-001.ino.elf"
esptool.py v4.5.1
Creating esp32 image...
Merged 2 ELF sections
Successfully created esp32 image.
"C:\\Arduino-Pure-Portable\\arduino-1.8.19\\portable\\packages\\esp32\\hardware\\esp32\\2.0.16\\tools\\gen_esp32part.exe" -q "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768/partitions.csv" "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768/Vermil-ESP32-001.ino.partitions.bin"
cmd /c if exist "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768\\libraries\\Insights" "C:\\Arduino-Pure-Portable\\arduino-1.8.19\\portable\\packages\\esp32\\hardware\\esp32\\2.0.16\\tools\\gen_insights_package.exe" "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768" Vermil-ESP32-001.ino "C:\\Arduino-Pure-Portable\\arduino-1.8.19\\portable\\sketchbook\\Vermil-ESP32-001"
Using library Wire at version 2.0.0 in folder: C:\Arduino-Pure-Portable\arduino-1.8.19\portable\packages\esp32\hardware\esp32\2.0.16\libraries\Wire 
Using library BasicLinearAlgebra at version 3.7 in folder: C:\Arduino-Pure-Portable\arduino-1.8.19\portable\sketchbook\libraries\BasicLinearAlgebra 
"C:\\Arduino-Pure-Portable\\arduino-1.8.19\\portable\\packages\\esp32\\tools\\xtensa-esp32-elf-gcc\\esp-2021r2-patch5-8.4.0/bin/xtensa-esp32-elf-size" -A "C:\\Users\\dipl-\\AppData\\Local\\Temp\\arduino_build_429768/Vermil-ESP32-001.ino.elf"
Sketch uses 291541 bytes (22%) of program storage space. Maximum is 1310720 bytes.
Global variables use 21932 bytes (6%) of dynamic memory, leaving 305748 bytes for local variables. Maximum is 327680 bytes.

Here is a tutorial that shows how tp install a portable version of IDE 1.8.19 which works completely independant of other IDE-installations.

You have to follow all steps very accurately otherwise it will not work
Especcially folder-names must exactly match

hello, I tested it. ESP32 doesn't work but plugging into arduino works.

Hello, it works on Uno as ESP32 I tested is why it doesn't work. Thank you for your help. I need to make a new post about the result as after Kalman filter integral summing is very bad

The syntax used by the library is invalid. You should remove the template arguments in the constructors.

For example, HorizontalConcat<LeftType, RightType>(const LeftType &l, const RightType &r) : left(l), right(r) {} should be HorizontalConcat(const LeftType &l, const RightType &r) : left(l), right(r) {}.

In older versions of C++, you were allowed to include the explicit template instantiation in constructor names (but doing so was entirely pointless), since C++20, this is no longer valid.

See the syntax rules on Constructors and member initializer lists - cppreference.com.

1 Like

@PieterP
I guess doing this properly is above the head of most users of the library.
You should post an issue on Github or even a pull-request which has it corrected.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.