Andy's Workshop Forums

General Category => stm32plus C++ library => Topic started by: ris2t on December 24, 2016, 06:39:52 pm

Title: Building with Ac6 SystemWorkBench
Post by: ris2t on December 24, 2016, 06:39:52 pm
Hi

Building the latest STM32 4.0.5 with the Ac6 SystemWorkBench (Mars 4.5.2) and getting the following error thats not making alot of sense (my C++ KB is very outdated).


/home/raymond/workspaceC/stm32plus/include/crc/BigEndianCrc.h:31:31: error: invalid conversion from 'int' to 'stm32plus::Endian' [-fpermissive]
class CrcPeripheral<BIG_ENDIAN> : public CrcBase {


I do note that the work bench seems to embedd, 5.4.1 compiler which I see another post flags as incompatible.
arm-none-eabi-g++ (GNU Tools for ARM Embedded Processors) 5.4.1 20160609

However its just this one error I'm encountering and rejigging SystemWorkBench to an older version looks to be non trivial.

Any help appreciated.
Title: Re: Building with Ac6 SystemWorkBench
Post by: ris2t on December 24, 2016, 06:56:26 pm
Update: Looks like a compiler issue. Managed to repoint (environment variable path) systemWorkBench at a 5.2.1 version and it compiles.

rm-none-eabi-g++ (GNU Tools for ARM Embedded Processors) 5.2.1 20151202

Would still be curious to understand the error and if the template code can be fixed. Or if it is the dud compiler.
Title: Re: Building with Ac6 SystemWorkBench
Post by: Andy Brown on December 30, 2016, 02:29:53 am
This is now fixed on the master branch. If you sync from github you should get the fix.

See issue:
https://github.com/andysworkshop/stm32plus/issues/193