grame-cncm / faust

Functional programming language for signal processing and sound synthesis
http://faust.grame.fr
Other
2.5k stars 318 forks source link

multiple definition of `__exidx_end' when building two audio objects for teensy #606

Open Ericxgao opened 3 years ago

Ericxgao commented 3 years ago

This is still an issue for me as I cannot compile multiple Faust objects (even if they're not imported into the code - simply the existance of the .h and .cpp files in the same directory as my .ino files causes this error to appear)

C:\Users\Eric\AppData\Local\Temp\arduino_build_582775\sketch\Harmonic.cpp.o:(.bss.__exidx_end+0x0): multiple definition of `__exidx_end'
C:\Users\Eric\AppData\Local\Temp\arduino_build_582775\sketch\Additive.cpp.o:(.bss.__exidx_end+0x0): first defined here
c:/program files (x86)/arduino/hardware/tools/arm/bin/../lib/gcc/arm-none-eabi/5.4.1/../../../../arm-none-eabi/bin/ld.exe: Disabling relaxation: it will not work with multiple definitions
C:\Users\Eric\AppData\Local\Temp\arduino_build_582775\sketch\Harmonic.cpp.o: In function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Alloc_hider::_Alloc_hider(char*, std::allocator<char> const&)':
C:\Users\Eric\AppData\Local\Temp\arduino_build_582775\sketch/Harmonic.cpp:9685: multiple definition of `__exidx_start'
C:\Users\Eric\AppData\Local\Temp\arduino_build_582775\sketch\Additive.cpp.o:C:\Users\Eric\AppData\Local\Temp\arduino_build_582775\sketch/Additive.cpp:9313: first defined here
collect2.exe: error: ld returned 1 exit status

Would be incredible to be able to use more than one Faust object with Teensy.

Ericxgao commented 3 years ago

The last thread was here: https://forum.pjrc.com/threads/55274-Using-Faust-with-Teensy?highlight=faust but while they were able to compile their code it was because they removed the conflicting Faust objects that were causing this issue. I suppose this is more of a feature request than a bug request as you still cannot use two Faust objects at once.