You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jan 29, 2023. It is now read-only.
### Releases v1.8.0
1. Fix `multiple-definitions` linker error. Drop `src_cpp` and `src_h` directories
2. Add example `Argument_Complex_Multi` to demonstrate how to avoid `multiple-definitions` linker error in multiple-file projects
*[1. ISR_16_Timers_Array_Complex on Arduino AVR Nano-V3 board](#1-isr_16_timers_array_complex-on-arduino-avr-nano-v3-board)
@@ -167,24 +168,26 @@ Another way to install is to:
167
168
168
169
### HOWTO Fix `Multiple Definitions` Linker Error
169
170
170
-
The current library implementation, using **xyz-Impl.h instead of standard xyz.cpp**, possibly creates certain `Multiple Definitions` Linker error in certain use cases. Although it's simple to just modify several lines of code, either in the library or in the application, the library is adding 2 more source directories
171
+
The current library implementation, using `xyz-Impl.h` instead of standard `xyz.cpp`, possibly creates certain `Multiple Definitions` Linker error in certain use cases.
To use the **old standard cpp** way, locate this library' directory, then just
180
+
in many files. But be sure to use the following `#include <TimerInterrupt.h>` or `#include <ISR_Timer.h>`**in just 1 `.h`, `.cpp` or `.ino` file**, which must **not be included in any other file**, to avoid `Multiple Definitions` Linker Error
178
181
179
-
1.**Delete the all the files in src directory.**
180
-
2.**Copy all the files in src_cpp directory into src.**
181
-
3. Close then reopen the application code in Arduino IDE, etc. to recompile from scratch.
182
+
```
183
+
// To be included only in main(), .ino with setup() to avoid `Multiple Definitions` Linker Error
0 commit comments