Am 08.09.2019 um 10:02 schrieb Patrick De Visschere <pdvissch...@edpnet.be>:
> 
> Sorry, mistyped the last “f”: it should have been 01ee3bf1e5, the master 
> branch on 5 sept.

I see. Yes, this is HEAD for me too. This is what works for me.

Perhaps you have different cmake flags?

I have:
-- LYX_CPACK                      = OFF       : Use the CPack management 
(Implies LYX_INSTALL option)
-- LYX_LOCALVERSIONING            = ON        : Add version info to created 
package name (only used if LYX_CPACK option set)
-- LYX_INSTALL                    = OFF       : Build install projects/rules 
(implies a bunch of other options)
-- LYX_NLS                        = ON        : Enable Native Language Support 
(NLS)
-- LYX_REQUIRE_SPELLCHECK         = OFF       : Abort if no spellchecker 
available
-- LYX_ASPELL                     = ON        : Require aspell
-- LYX_ENCHANT                    = OFF       : Require Enchant
-- LYX_HUNSPELL                   = ON        : Require Hunspell
-- LYX_RELEASE                    = OFF       : Build release version, build 
debug when disabled
-- LYX_DEBUG                      = ON        : Enforce debug build
-- LYX_NO_OPTIMIZE                = OFF       : Don't use any 
optimization/debug flags
-- LYX_PACKAGE_SUFFIX             = OFF       : Use version suffix for packaging
-- LYX_SUFFIX_VALUE               =           : Use this string as suffix
-- LYX_PCH                        = OFF       : Use precompiled headers
-- LYX_MERGE_FILES                = OFF       : Merge source files into one 
compilation unit
-- LYX_MERGE_REBUILD              = OFF       : Rebuild generated files from 
merged files build
-- LYX_QUIET                      = OFF       : Don't generate verbose makefiles
-- LYX_INSTALL_PREFIX             = OFF       : Install path for LyX
-- LYX_BUNDLE                     = OFF       : Build bundle  (experimental) 
-- LYX_ENABLE_URLTESTS            = OFF       : Enable for URL tests
-- LYX_ENABLE_EXPORT_TESTS        = ON        : Enable for export tests
-- LYX_ENABLE_KEYTESTS            = OFF       : Enable for keytests
-- LYX_ASAN                       = OFF       : Use address sanitizer
-- LYX_USE_FILEDIALOG             = QT        : Use native or QT file dialog 
(QT NATIVE)
-- LYX_USE_QT                     = QT5       : Use Qt version as frontend 
(AUTO QT4 QT5)
-- LYX_DISABLE_CALLSTACK_PRINTING = OFF       : do not print a callstack when 
crashing
-- LYX_EXTERNAL_Z                 = ON        : OFF := Build 3rdparty lib zlib
-- LYX_EXTERNAL_ICONV             = ON        : OFF := Build 3rdparty lib 
iconvlib
-- LYX_EXTERNAL_HUNSPELL          = ON        : OFF := Build 3rdparty lib 
hunspelllib
-- LYX_EXTERNAL_MYTHES            = OFF       : OFF := Build 3rdparty lib 
mytheslib (AUTO OFF ON)
-- LYX_DMG                        = OFF       : Build as Mac bundle, needed for 
.dmg  (experimental) 
-- LYX_COCOA                      = OFF       : Use Cocoa on Mac

Stephan

> 
>> On 8 Sep 2019, at 09:34, Stephan Witt <st.w...@gmx.net> wrote:
>> 
>> Am 07.09.2019 um 10:14 schrieb pdv <pdvissch...@edpnet.be>:
>>> 
>>> LyX fails to build on macos (Mojave, CMake, XCode) with the latest commit 
>>> (01ee3bf1f5) with message:
>>> 
>>> Undefined symbols for architecture x86_64:
>>> "boost::assertion_failed_msg(char const*, char const*, char const*, char 
>>> const*, long)", referenced from:
>>>     boost::array<unsigned int, 256ul>::operator[](unsigned long) in 
>>> ConverterCache.o
>>>     boost::array<unsigned int, 256ul>::operator[](unsigned long) in 
>>> libfrontend_qt.a(GuiApplication.o)
>>>     boost::array<unsigned int, 256ul>::operator[](unsigned long) in 
>>> libsupport.a(FileName.o)
>>>     boost::array<unsigned int, 256ul>::operator[](unsigned long) in 
>>> libfrontend_qt.a(GuiClipboard.o)
>>> 
>>> From the boost docs 
>>> (https://www.boost.org/doc/libs/1_68_0/libs/assert/doc/html/assert.html) 
>>> it's clear that boost::assertion_failed_msg() must be defined, ...
>>> 
>>> If the macro BOOST_ENABLE_ASSERT_HANDLER is defined when <boost/assert.hpp> 
>>> is included, BOOST_ASSERT_MSG(expr,msg) expands to
>>> 
>>> (BOOST_LIKELY(!!(expr))? ((void)0): ::boost::assertion_failed_msg(#expr,
>>>   msg, BOOST_CURRENT_FUNCTION, __FILE__, __LINE__))
>>> This is true regardless of whether NDEBUG is defined.
>>> 
>>> boost::assertion_failed_msg is declared in <boost/assert.hpp> as
>>> 
>>> namespace boost
>>> {
>>>   void assertion_failed_msg(char const * expr, char const * msg,
>>>       char const * function, char const * file, long line);
>>> }
>>> but it is never defined. The user is expected to supply an appropriate 
>>> definition.
>>> 
>>> ... which is not the case now, and BOOST_ASSERT_MSG is defined in 
>>> boost::array.hpp.
>>> 
>>> I've defined the additional function assertion_failed_msg()in boost.cpp 
>>> (patch attached) and this resolves the problem.
>>> 
>>> Two more remarks:
>>> 
>>> 1) I don't understand why this problem surfaces now and not earlier;
>>> 
>>> 2) There are additional definitions of assertion_failed() in 
>>> client/boost.cpp and in tex2lyx/boost.cpp;
>> 
>> I cannot find the commit 01ee3bf1f5. Is it a local one in your git checkout?
>> 
>> I don’t have this problem with neither with automake nor with cmake.
>> 
>> Stephan
> 
> --------------------------------------------------------------------------------------------
> Patrick De Visschere                                                        
> 051/46 70 25
> Pensionaatstraat 25                                     
> 8755 Ruiselede
> --------------------------------------------------------------------------------------------
> 
> 
> 
> 

Reply via email to