|
|
(31 intermediate revisions by 2 users not shown) |
Line 1: |
Line 1: |
− | === Milestone === | + | === <div align="left" style="color:blue; font-size:18px">'''Milestone '''</div> === |
| | | |
| Current Build is m245, but m247 should work too | | Current Build is m245, but m247 should work too |
Line 11: |
Line 11: |
| For that purpose, we will use the most known tool : [http://sourceware.org/gdb/ ''the GNU Project debugger, aka gdb'''] ( included in XCode on Mac OS X ). | | For that purpose, we will use the most known tool : [http://sourceware.org/gdb/ ''the GNU Project debugger, aka gdb'''] ( included in XCode on Mac OS X ). |
| | | |
− | For the one discovering ''gdb''', there is [http://www.cs.cmu.edu/~gilpin/tutorial/ an '''online gdb tutorial'''] | + | For the one discovering '''gdb''', there is [http://sources.redhat.com/gdb/current/onlinedocs/gdb_toc.html '''online gdb tutorial'''] or [http://www.cs.cmu.edu/~gilpin/tutorial/ another one there ] |
| | | |
| | | |
Line 19: |
Line 19: |
| The problem is, since sb71 integration, use symlinks with libs is just a workaround. See [[http://www.openoffice.org/issues/show_bug.cgi?id=83548 '''issue 83548''' for more information ]] | | The problem is, since sb71 integration, use symlinks with libs is just a workaround. See [[http://www.openoffice.org/issues/show_bug.cgi?id=83548 '''issue 83548''' for more information ]] |
| | | |
− | ==== A patch for linkoo ====
| + | '''The clean solution : replace libstarmaths* in the bundle after every rebuild''' |
| | | |
− | Waiting, the following patch (thanks to Kendy !! ) should allow linkoo to work as expected : [[http://eric.bachard.free.fr/Education/february2008/linkoo/fix-linkoo_new.diff patch for linkoo]]
| + | Todo : write a little shell script doing the job ;-) |
| | | |
− | ==== Apply the patch ==== | + | ==== (workaround) A patch for linkoo ==== |
| + | |
| + | Waiting, the following patch (thanks to Kendy !! ) should allow linkoo to work as expected : [http://eric.bachard.free.fr/Education/february2008/linkoo/fix-linkoo_new.diff patch for linkoo] |
| + | |
| + | ==== (workaround) Apply the patch ==== |
| | | |
| | | |
Line 39: |
Line 43: |
| With this patch applied, linkoo should work as expected. Please note this is a workaround, to make linkoo work for debug purpose. | | With this patch applied, linkoo should work as expected. Please note this is a workaround, to make linkoo work for debug purpose. |
| | | |
− | ===Process === | + | ===<div align="left" style="color:blue; font-size:18px">'''Process '''</div> === |
| | | |
| ==== Add debug infos in starmath ==== | | ==== Add debug infos in starmath ==== |
Line 45: |
Line 49: |
| 1) Build adding rectangles (for baselines and co ) | | 1) Build adding rectangles (for baselines and co ) |
| | | |
− | -> uncomment line 93 in node.cxx : all formulas will be drawn with colored lines giving all alignment information ( Top Bottom Baseline when existing ..etc ) -> See the screenshots below | + | -> uncomment line 93 in node.cxx : all formulas will be drawn with colored lines giving all alignment information ( Top Bottom Baseline when existing ..etc ) -> See the screenshots below |
| + | |
| + | (This line seems to me moved now. Corresponding SM_RECT_DEBUG is at line 59. But uncommenting wouldn't work there. Rather move this to inc/rect.hxx) -- rakesh *need to provide patch upstream later* It is [http://rakesh.fedorapeople.org/misc/starmath.patch here] |
| + | |
| + | <pre> |
| + | Index: ./inc/rect.hxx |
| + | =================================================================== |
| + | RCS file: /cvs/sw/starmath/inc/rect.hxx,v |
| + | retrieving revision 1.7 |
| + | diff -u -r1.7 rect.hxx |
| + | --- ./inc/rect.hxx 24 Apr 2008 13:57:29 -0000 1.7 |
| + | +++ ./inc/rect.hxx 15 Sep 2008 17:33:58 -0000 |
| + | @@ -62,6 +62,7 @@ |
| + | // Note: however, italic spaces can be negative! |
| + | // |
| + | |
| + | +#define SM_RECT_DEBUG |
| + | // possible flags for the 'Draw' function below (just for debugging) |
| + | #define SM_RECT_CORE 0x0001 |
| + | #define SM_RECT_ITALIC 0x0002 |
| + | </pre> |
| | | |
| ==== Rebuild starmath libs ==== | | ==== Rebuild starmath libs ==== |
Line 78: |
Line 102: |
| ==== Linkoo ==== | | ==== Linkoo ==== |
| | | |
− | 3) if never done, run linkoo
| |
| | | |
− | '''Important: one time only !!''' | + | If never done before, run linkoo. '''Important: one time only !!''' |
| | | |
− | Method : | + | =====Method ===== |
| + | |
| + | * Notations |
| | | |
| BUILD_SRC_DIR is the directory containing all the sources | | BUILD_SRC_DIR is the directory containing all the sources |
Line 90: |
Line 115: |
| command line | | command line |
| | | |
− | 1) go into <BUILD_SRC_DIR>/solenv/bin
| + | * Go into <BUILD_SRC_DIR>/solenv/bin |
| | | |
| cd <BUILD_SRC_DIR>/solenv/bin | | cd <BUILD_SRC_DIR>/solenv/bin |
| | | |
− | 2) Run linkoo ( fake command, to verify everything is ok )
| + | * Run linkoo ( fake command, to verify everything is ok ) |
| | | |
| --dry-run is for the simulation. don't forget it ( else you can screew your tree ) | | --dry-run is for the simulation. don't forget it ( else you can screew your tree ) |
Line 108: |
Line 133: |
| ./linkoo ~/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents/ ~/Desktop/SRC680_m247 --dry-run | | ./linkoo ~/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents/ ~/Desktop/SRC680_m247 --dry-run |
| | | |
| + | <div align="left" style="color:red; font-size:18px">'''PLEASE READ ''' [[Education_Project/Effort/Math_baseline_alignment/Debuging_starmath/linkoo log | Linkoo Instalation log</div> ]] |
| | | |
− | Should return :
| |
| | | |
− | ordinateur-de-eric-b-2:~/Desktop/SRC680_m247/solenv/bin ericb$ ./linkoo ~/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents/ ~/Desktop/SRC680_m247 --dry-run
| + | * '''Run linkoo for true''' ( using --product option ) |
− | Sniffed target: unxmacxi.pro, 680
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/class/report.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/report.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/scaddins/unxmacxi.pro/bin/date680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/date680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/goodies/unxmacxi.pro/bin/epg680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/epg680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/sj2/unxmacxi.pro/class/classes.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/classes.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/class/web.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/web.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/connectivity/unxmacxi.pro/bin/sdberr680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/sdberr680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/svtools/unxmacxi.pro/bin/svs680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/svs680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/xmlsecurity/unxmacxi.pro/bin/xmlsec680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/xmlsec680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/goodies/unxmacxi.pro/bin/egi680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/egi680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/sfx2/unxmacxi.pro/bin/sfx680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/sfx680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/extensions/unxmacxi.pro/bin/san680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/san680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/xmerge/unxmacxi.pro/class/xmerge.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/xmerge.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/pyuno/unxmacxi.pro/lib/pyuno.so => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/pyuno.so
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/instsetoo_native/unxmacxi.pro/bin/images.zip => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//share/config/images.zip
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/bin/dbw680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/dbw680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/reportdesign/unxmacxi.pro/bin/rptui680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/rptui680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/filter/unxmacxi.pro/bin/pdffilter680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/pdffilter680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/svx/unxmacxi.pro/bin/svx680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/svx680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/svtools/unxmacxi.pro/bin/productregistration680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/productregistration680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/binfilter/unxmacxi.pro/bin/bf_sch680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/bf_sch680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/xmerge/unxmacxi.pro/class/pexcel.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/pexcel.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/bin/imp680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/imp680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/connectivity/unxmacxi.pro/bin/cnr680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/cnr680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/binfilter/unxmacxi.pro/bin/bf_sc680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/bf_sc680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/svtools/unxmacxi.pro/bin/svt680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/svt680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/class/form.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/form.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/dbaccess/unxmacxi.pro/bin/dba680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/dba680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/starmath/unxmacxi.pro/bin/sm680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/sm680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/filter/unxmacxi.pro/bin/xsltdlg680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/xsltdlg680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/bin/tpl680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/tpl680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/scaddins/unxmacxi.pro/bin/analysis680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/analysis680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/xmerge/unxmacxi.pro/class/XMergeBridge.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/XMergeBridge.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/sw/unxmacxi.pro/bin/sw680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/sw680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/goodies/unxmacxi.pro/bin/tfu680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/tfu680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/scripting/unxmacxi.pro/class/ScriptFramework.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/ScriptFramework.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/sc/unxmacxi.pro/bin/sc680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/sc680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/filter/unxmacxi.pro/class/XSLTFilter.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/XSLTFilter.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/goodies/unxmacxi.pro/bin/ept680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/ept680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/binfilter/unxmacxi.pro/bin/bf_sd680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/bf_sd680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/svx/unxmacxi.pro/bin/ooo680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/ooo680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/svx/unxmacxi.pro/bin/textconversiondlgs680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/textconversiondlgs680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/scripting/unxmacxi.pro/class/ScriptProviderForJava.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/ScriptProviderForJava.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/jut/unxmacxi.pro/class/jut.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/jut.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/scext/unxmacxi.pro/bin/solver680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/solver680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/binfilter/unxmacxi.pro/bin/bf_sw680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/bf_sw680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/goodies/unxmacxi.pro/bin/epp680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/epp680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/chart2/unxmacxi.pro/bin/chartcontroller680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/chartcontroller680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/avmedia/unxmacxi.pro/bin/avmedia680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/avmedia680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/accessibility/unxmacxi.pro/bin/acc680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/acc680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/unoil/unxmacxi.pro/class/unoil.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/unoil.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/extensions/unxmacxi.pro/bin/dbp680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/dbp680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/fpicker/unxmacxi.pro/bin/fps_office680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/fps_office680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/dbaccess/unxmacxi.pro/bin/dbu680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/dbu680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/goodies/unxmacxi.pro/bin/eme680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/eme680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/scripting/unxmacxi.pro/class/ScriptProviderForBeanShell.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/ScriptProviderForBeanShell.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/desktop/unxmacxi.pro/bin/deployment680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/deployment680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/binfilter/unxmacxi.pro/bin/bf_sm680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/bf_sm680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/extensions/unxmacxi.pro/bin/abp680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/abp680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/instsetoo_native/unxmacxi.pro/bin/images_crystal.zip => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//share/config/images_crystal.zip
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/instsetoo_native/unxmacxi.pro/bin/images_hicontrast.zip => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//share/config/images_hicontrast.zip
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/svx/unxmacxi.pro/bin/gal680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/gal680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/xmerge/unxmacxi.pro/class/writer2latex.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/writer2latex.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/vcl/unxmacxi.pro/bin/vcl680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/vcl680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/jurt/unxmacxi.pro/class/jurt.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/jurt.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/dbaccess/unxmacxi.pro/bin/sdbt680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/sdbt680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/scripting/unxmacxi.pro/class/ScriptProviderForJavaScript.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/ScriptProviderForJavaScript.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/desktop/unxmacxi.pro/bin/deploymentgui680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/deploymentgui680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/uui/unxmacxi.pro/bin/uui680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/uui680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/instsetoo_native/unxmacxi.pro/bin/images_industrial.zip => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//share/config/images_industrial.zip
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/binfilter/unxmacxi.pro/bin/bf_ofa680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/bf_ofa680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/bin/eur680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/eur680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/extensions/unxmacxi.pro/bin/pcr680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/pcr680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/extensions/unxmacxi.pro/bin/bib680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/bib680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/extensions/unxmacxi.pro/bin/preload680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/preload680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/class/letter.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/letter.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/bin/wzi680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/wzi680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/goodies/unxmacxi.pro/bin/eps680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/eps680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/class/table.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/table.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/connectivity/unxmacxi.pro/bin/sdbcl680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/sdbcl680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/framework/unxmacxi.pro/bin/fwe680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/fwe680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/class/query.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/query.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/class/agenda.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/agenda.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/toolkit/unxmacxi.pro/bin/tk680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/tk680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/xmerge/unxmacxi.pro/class/pocketword.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/pocketword.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/basctl/unxmacxi.pro/bin/basctl680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/basctl680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/binfilter/unxmacxi.pro/bin/bf_frm680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/bf_frm680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/xmerge/unxmacxi.pro/class/aportisdoc.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/aportisdoc.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/instsetoo_native/unxmacxi.pro/bin/images_tango.zip => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//share/config/images_tango.zip
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/desktop/unxmacxi.pro/bin/dkt680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/dkt680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/connectivity/unxmacxi.pro/class/sdbc_hsqldb.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/sdbc_hsqldb.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/ridljar/unxmacxi.pro/class/ridl.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/ridl.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/bridges/unxmacxi.pro/class/java_uno.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/java_uno.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/bin/cal680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/cal680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/class/fax.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/fax.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/wizards/unxmacxi.pro/class/commonwizards.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/commonwizards.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/sd/unxmacxi.pro/bin/sd680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/sd680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/javaunohelper/unxmacxi.pro/class/juh.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/juh.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/basic/unxmacxi.pro/bin/sb680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/sb680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/basic/unxmacxi.pro/bin/stt680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/stt680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/forms/unxmacxi.pro/bin/frm680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/frm680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/reportdesign/unxmacxi.pro/bin/rpt680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/rpt680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/goodies/unxmacxi.pro/bin/epb680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/epb680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/svx/unxmacxi.pro/bin/ofa680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/ofa680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/sandbox/unxmacxi.pro/class/sandbox.jar => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/classes/sandbox.jar
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/extensions/unxmacxi.pro/bin/updchk680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/updchk680en-US.res
| + | |
− | move / symlink /Users/ericb/Desktop/SRC680_m247/binfilter/unxmacxi.pro/bin/bf_svx680en-US.res => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/resource/bf_svx680en-US.res
| + | |
| | | |
− | Special iso.res case:
| + | ./linkoo ~/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents/ ~/Desktop/SRC680_m247 --product |
− | Types.rdb case:move / symlink /Users/ericb/Desktop/SRC680_m247/offapi/unxmacxi.pro/ucr/types.db => /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/types.rdb
| + | |
| | | |
− | soffice filesmove / symlink /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/soffice => /Users/ericb/Desktop/SRC680_m247/desktop/unxmacxi.pro/bin/soffice.bin
| |
− | move / symlink /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/bootstraprc => /Users/ericb/Desktop/SRC680_m247/desktop/unxmacxi.pro/bin/bootstraprc
| |
− | move / symlink /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/intro.bmp => /Users/ericb/Desktop/SRC680_m247/desktop/unxmacxi.pro/bin/intro.bmp
| |
− | move / symlink /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//share => /Users/ericb/Desktop/SRC680_m247/desktop/unxmacxi.pro/share
| |
− | move / symlink /Users/ericb/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents//program/configmgrrc => /Users/ericb/Desktop/SRC680_m247/configmgr/unxmacxi.pro/lib/configmgrrc
| |
| | | |
| + | * Run ooenv |
| | | |
− | linkoo finished, please don't forget to source ooenv before ./soffice. | + | '''To avoid strange effects, once linkoo finished, please don't forget to source ooenv before ./soffice. ''' |
− | ordinateur-de-eric-b-2:~/Desktop/SRC680_m247/solenv/bin ericb$
| + | |
| + | |
| + | ooenv is located in '''INSTALL_DIR/OpenOffice.org.app/Contents/program''' (means ~/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents/program ) |
| + | |
| + | ./ooenv |
| + | |
| + | And then launch gdb as described below |
| + | |
| + | ===== Mac OS X Linkoo Issue ===== |
| + | |
| + | '''FIXME''' : linkoo seems to not work ( I'll have a look asap ) |
| + | |
| + | |
| + | Workaround : |
| + | |
| + | '''Link the new libs ( or use linkoo ) from inside the bundle'''. |
| + | |
| + | *Go into the Bundle : |
| + | |
| + | cd ~/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents/MacOS |
| + | |
| + | *Remove the striped libs : |
| + | |
| + | rm -f libsm680mxi.dylib libsmd680mxi.dylib |
| + | |
| + | *create symlinks for the non strippied one : |
| + | |
| + | ln -s ~/Desktop/SRC680_m247/starmath/unxmacxi.pro/lib/libsm680mxi.dylib . |
| + | |
| + | ln -s ~/Desktop/SRC680_m247/starmath/unxmacxi.pro/lib/libsmd680mxi.dylib . |
| + | |
| + | !! don't forget the points !! |
| | | |
| ==== Attach the running process to gdb ==== | | ==== Attach the running process to gdb ==== |
| | | |
− | 4) launch OpenOffice.org
| + | * Launch OpenOffice.org |
| | | |
| Should work out of the box :) | | Should work out of the box :) |
| | | |
− | 5) find the processus number of soffice.bin
| + | * Find the processus number of soffice.bin |
| | | |
| To find the correct processus number correponding to OpenOffice.org binary execution, just run the following command line in a terminal : | | To find the correct processus number correponding to OpenOffice.org binary execution, just run the following command line in a terminal : |
Line 259: |
Line 203: |
| --> | | --> |
| | | |
− | 6) In a terminal, run gdb
| + | * In a terminal, run gdb |
| | | |
| ordinateur-de-eric-b-2:~ ericb$ gdb -q | | ordinateur-de-eric-b-2:~ ericb$ gdb -q |
Line 327: |
Line 271: |
| * or several solution will be proposed, and you'll have to decide which one use .. | | * or several solution will be proposed, and you'll have to decide which one use .. |
| | | |
− | === How to add breakpoints ? ===
| + | <br> |
| | | |
| + | === How to add breakpoints ? === |
| | | |
| + | <br> |
| A breakpoint is an extremely helpfull way to stop -repeatably and safely- the binary execution, and analyse what happens with the code, modify on the fly, test other values ..etc | | A breakpoint is an extremely helpfull way to stop -repeatably and safely- the binary execution, and analyse what happens with the code, modify on the fly, test other values ..etc |
| | | |
Line 388: |
Line 334: |
| | | |
| A lot of screenshots and more informations are available at : [[http://eric.bachard.free.fr/Education/february2008/starmath/ Ericb's site starmath ]] | | A lot of screenshots and more informations are available at : [[http://eric.bachard.free.fr/Education/february2008/starmath/ Ericb's site starmath ]] |
| + | [[Category:Education]] |
To trace, analyze, understand the issue and fix it, it is mandatory to debug starmath.
all libmath are stripped by default, and you'll have to add the symbols for debugging. Thus you'll have to rebuild starmath, and symlink with the new math libs.
Waiting, the following patch (thanks to Kendy !! ) should allow linkoo to work as expected : patch for linkoo
Just put it in the root dir ( the one containing all OpenOffice.org sources), and do :
-> uncomment line 93 in node.cxx : all formulas will be drawn with colored lines giving all alignment information ( Top Bottom Baseline when existing ..etc ) -> See the screenshots below
(This line seems to me moved now. Corresponding SM_RECT_DEBUG is at line 59. But uncommenting wouldn't work there. Rather move this to inc/rect.hxx) -- rakesh *need to provide patch upstream later* It is here
If never done before, run linkoo. Important: one time only !!
--dry-run is for the simulation. don't forget it ( else you can screew your tree )
./linkoo ~/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents/ ~/Desktop/SRC680_m247 --dry-run
./linkoo ~/Desktop/test_m247_aquavcl05/OpenOffice.org.app/Contents/ ~/Desktop/SRC680_m247 --product
ln -s ~/Desktop/SRC680_m247/starmath/unxmacxi.pro/lib/libsm680mxi.dylib .
ln -s ~/Desktop/SRC680_m247/starmath/unxmacxi.pro/lib/libsmd680mxi.dylib .
To find the correct processus number correponding to OpenOffice.org binary execution, just run the following command line in a terminal :
11666 ?? S 0:00.56 /Applications/OpenOffice.org 2.4.app/Contents/MacOS/soffice.bin -psn_0_51511297
... and attach the process number corresponding to soffice.bin
There are exactly 27 Arrange() methods in node.cxx, and all must be analyzed.
As preliminary, don't forget to use gdb completion feature: it's great and very usefull when you have to choose between several possibilities, like the same but overloaded method ... etc.
Principle: write the first letters of the word you want to write, and when sure, hit TAB key ( hit it several times if needed )
Note: when the same method is overloaded, you can add the arguments to be sure to hit the right method.
type an equation containing a^2 + b^2 , exit formula ( ESC twice ) then enter the word "text"
then create a new equation containing %tau a^2 + b^2 and notice the difference.
When entering whatever letter, you hit a breakpoint. Just trace after it, and compare the two equations (e.g.)