Add -ffat-lto-objects compile option #14
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Recently, I started using
lld
as the default linker for my applications. It is a very faster replacement for the defaultgold
linker, included at the binutils package.After first compilation using
lld
as the linker, this package started givingImportError
s such as this one:This error can be reproduced by installing
lld
and adding the following line beforetarget_compile_options
(currently, line 28) onCMakeLists.txt
:target_link_options(SymSpellCppPy PRIVATE -fuse-ld=lld)
After playing a little with the compilation flags, it seems that adding the flag
-ffat-lto-objects
totarget_compile_options
onCMakeLists.txt
fixes the problem.This pull request addresses this issue, while keeping backward compatibility with other linkers.