Ipe crashing on MacOS X
Otfried Cheong <[email protected]>
| Newsgroups | gmane.comp.graphics.ipe.general |
|---|---|
| Message-ID | <[email protected]> |
A number of users had problems with Ipe crashing randomly on MacOS X (while others had never seen any such problem), see https://sourceforge.net/apps/mantisbt/ipe7/view.php?id=20 It seems we have now finally identified the source of the problem. It occurs when Lua is incorrectly compiled as a static library instead of a dynamic library. This results in ipeui.dylib, ipelua.dylib, and the ipe program itself all linking in (parts of) the Lua interpreter statically, so you end up with a program that contains three copies of the interpreter. In a sense, it is surprising that it worked at all... You should be able to check if your libraries and executables are linked against the Lua dynamic library. (On Linux, you would say "ldd ipe", or "ldd libipelua.so", and would need to see a line listing "liblua5.1.so" or so - does "ldd" exist on MacOS X?) If you compiled using macports, this could have happened because macports only compiled a static library until recently (this should now be fixed). So rebuilding Lua and Ipe using macports should now fix the problem. If you compiled Lua yourself, you should look at the makefile. Unfortunately, "make macosx" seems to only compile a static library. You should probably delete the file "liblua.a" from your system entirely. There is no reason to have the static library around (unless you use Lua for something else), and it will force all compilations to link against the dynamic library "liblua.dylib". The next release will have new compilation instructions for MacOS X, and appropriate warnings. Cheers, Otfried