Check for hunspell.hxx always fails
pdv
pdvisschere at edpnet.be
Fri Nov 29 12:04:48 UTC 2019
On 28/11/2019 14:22, Kornel Benko wrote:
> Am Thu, 28 Nov 2019 13:38:26 +0100
> schrieb pdv <pdvisschere at edpnet.be>:
>
>> Right now the check for the presence of hunspell.hxx in
>> ConfigureChecks.cmake always fails for me (MacOS10.14, master build)
>> with the result `HAVE_HUNSPELL_CXXABI = FALSE`, although hunspell.hxx is
>> available. That's a minor issue since hunspell works anyway, but the
>> check seems useless now.
>
> Where is it available? Here, on ubuntu, it is under /usr/include/hunspell/hunspell.hxx
I use the macports one /opt/local/include/hunspell
but it also works with the 3thparty one included with lyx.
>
>> To proceed the check should include a `LINK_LIBRARIES` entry in the
>> try_compile() step.
>
> No, not needed, see below ...
>
>> Also the `hunspell` in the `#include
>> <hunspell/hunspell.hxx>` instruction in the test file should be removed.
>> It should be included in the `HUNSPELL_INCLUDE_DIR` definition.
>
> Good point.
>
>> With these changes `HAVE_HUNSPELL_CXXABI = TRUE` (supposed hunspell.hxx
>> is present).
>>
>> I don't understand the
>> "-DCMAKE_CXX_LINK_EXECUTABLE='${CMAKE_COMMAND} echo not linking now...'"
>> entry which contained a typo anyway. It sounds like one wanted to avoid
>> the linking in which case the LINK_LIBRARIES is indeed not needed.
>>
>
> The try_compile() normally creates an executable (e.g. compile + link)
> and we want to compile only here.
I thought so (and I suppose libhunspell is then also not needed by LyX,
which I did not realize), but that doesn't work for me; without the
LINK_LIBRARIES the build fails:
Undefined symbols for architecture x86_64:
"Hunspell::stem(std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > const&)",
referenced from:
_main in hunspelltest.o
"Hunspell::Hunspell(char const*, char const*, char const*)",
referenced from:
_main in hunspelltest.o
"Hunspell::~Hunspell()", referenced from:
_main in hunspelltest.o
ld: symbol(s) not found for architecture x86_64
It has been reported that this trick does not work with XCode:
https://cmake.org/pipermail/cmake/2010-May/037132.html
>
>>
>> Patrick
>
> Kornel
>
>
More information about the lyx-devel
mailing list