Before logging an issue, please update to the latest release of Visual Micro from the Downloads Page.

When Logging a Support Issue in the Forum, please ensure you have also:-

  • Enabled vMicro > Compiler > Show Build Properties
  • Re-Compile your program with these settings enabled
 
Save the new Output to a Text File and....
  • Click the Reply button and attach as .txt file OR
  • Click here to Email us with the file attached, and a link to your post
Support requests without the output above may be impossible to answer, so please help us to help you
 
Page Index Toggle Pages: 1 Send TopicPrint
Normal Topic 1609.01 - Atmel Debugging + Projects with or without .Ino Files! (Read 1560 times)
Tim@Visual Micro
Administrator
*****
Offline


Posts: 12191
Location: United Kingdom
Joined: Apr 10th, 2010
1609.01 - Atmel Debugging + Projects with or without .Ino Files!
Sep 1st, 2016 at 5:35pm
Print Post  
HOT: Using a project_name.ino will override all .ino files and build the live sources instead of a temp copy. A project_name.ino must still exist, can be empty and will be ignored by the build.
  • Support [project_name].cpp as an alternative to .ino files. NOTE: A project_name.ino MUST still exist in the project folder and project. The ino can be empty and is ignored by the compiler when a project_name.cpp exists in the project. Visual Micro requires the project_name.ino to determine the project is an Arduino project.
  • When using a project_name.cpp instead of .ino files, the build is performed on the live project sources instead of a copy in the temporary folder. The compiler include paths will contain the path of the project folder instead of the path of the temp build folder. by popuar request Smiley
  • To make use of the "vMicro>Debugger>Use Atmel Studio Debugger" facility it is hightly recommended that a project_name.cpp is used instead of .ino files. The Atmel debuger doesn't work well with projects that contain .ino source code and will display code from the temp folder during a debug "step/break" operation which is highly confusing for users.
  • When using a "project_name.cpp", all the arduino build rules remain in place. Libraries must be #included using the standard Arduino #include <lib.h> syntax (no qualified paths). 
  • When using a "project_name.ino", the "Add Library" facility will add demo #includes to the "project_name.ino".
  • The #includes are ignored because the .ino is ignored, however it is useful to see the correct #include syntax for each library which can be copied into .cpp files as required.
  • Support new Arduino library.properties property called "includes". The "includes" property enables library developers to control which headers are #included when the "Add Code>Add Library" command is used.
  • When using a project_name.cpp it must serve the most basic of arduino code for the project to compile correctly. 1) #include "Arduino.h" 2) void setup() {} 3) void loop() {}. The setup() and loop() must have prototypes. To find a "ready made" project_name.cpp with the correct code for the current Arduino project switch on "vMicro>Compiler>Show Build Folder" then build. The build output will contain a link to the build folder and in the folder will be a project_name.cpp. Copy the project_name.cpp into the current project and the .ino files will no longer be used during builds.
  • The core variant objects are no longer archived into a core.a, instead are passed as .o files to the linker before the core.a
  • Compiler - Library source modification always uses .d dependancy scanning and more relianbly detects changes to #included headers
  • Serial more robustly uses the DTR and RTS settings even when testing to see if a port is busy/available or not. The usb driver of the WICD stm32 board hangs if this doesn't happen. The WICED board needs DTR and RTS ON
  • Serial Monitor open/close more resiliant (feedback in forum appreciated)
  • General compiler cache improvements
  • Toggle Hidden Files now includes all variant files (previously just showed headers)
  • Honour libraryproperties.includes to determine which headers are added when using "Add LIbrary"
  • Fixed issues that caused board settings such as defines to fail to refresh when switching between configurations such as Debug/Release
  • Reintroduced new version dialog notification for major updates (if check for new releases has not been disabled)
  • Tested with various STM32 boards such as Adafruit WICED
  • Fix: "Deep Search toggle" menu command configured the startup project instead of active project. If the "project" is not an arduino project the command is not displayed.
« Last Edit: Sep 1st, 2016 at 5:38pm by Tim@Visual Micro »  
Back to top
IP Logged
 
Page Index Toggle Pages: 1
Send TopicPrint