Discuss here different C compiler set ups, and compiling executables for the ESP8266

User avatar
By jonsmirl
#92 Very interesting to compile the same code using GCC, then compare the binaries. I compiled some of the files by hand and they compiled ok. But it is unknown if everything will link together.

All that is missing is for someone to rework the makefiles into something Linux will process.
User avatar
By RichardS
#93 The 2 compiler will not generate the same code, this is very unlikely, all compilers have there own ways to deal with everything and when linked the chances of the code even being in the same place is slim to none... so that is not a good test, but I agree 100% GCC for the future and getting all to work in Linux so someone can make a live CD with the tool chain pre-installed or other VM image would be very nice to have!

Richard.
User avatar
By tinhead
#97
Bert wrote:This assumes you have the VM running, and have a valid license (or a workaround for this, see the other topic).

  • Unpack the SDK zip file somewhere. I assume C:\ here, so you will now have a directory C:\esp_iot_sdk_v0.6.
  • Move the IoT demo directory (in C:\esp_iot_sdk_v0.6\examples) one directory up, and rename it to contains no spaces (I picked iot): you now have C:\esp_iot_sdk_v0.6\iot containing all files previously in C:\esp_iot_sdk_v0.6\examples\IoT demo.
  • Start the Xtensa lx106 command prompt by double-clicking the "xtensa" shortcut on the desktop.
  • Navigate to the SDK directory: cd C:\esp_iot_sdk_v0.6
  • If you have modified the system time, run: touch * */* */*/* */*/*/* to reset the file modification times (necessary for GNU make dependency tracking)
  • Navigate to the target directory: cd iot
  • Run: make
  • Wait for a while
  • Find the resulting binaries in C:\esp_iot_sdk_v0.6\iot\.output (and subdirectories)


when i'm not wrong after make one have to copy the C:\esp_iot_sdk_v0.6\app\gen_misc.bat to C:\esp_iot_sdk_v0.6\iot\
and execute it (still in the xtensa command prompt window of course) to get proper flash(able) image (eagle.app.v6.flash.bin).