LibreOffice:确定负责打印的源代码部分

维塔利·伊萨夫(Vitaly Isaev)

我正在尝试为LibreOffice打印过程实现一些其他功能(一些特殊信息应自动添加到每个打印页面的空白处)。我正在将RHEL 6.4与LibreOffice 4.0.4和Gnome 2.28一起使用。

我的目的是研究LibreOffice和系统组件之间的数据流,并确定哪些源代码负责打印。之后,我将不得不修改这些代码部分。

现在,我需要有关源代码研究方法的建议。我发现了很多工具,从我的角度来看:

  1. strace 似乎很低级;
  2. gprof需要使用“ -pg” CFLAGS重新编译二进制文件;不知道如何使用LibreOffice;
  3. systemtap 只能探测系统调用,不是吗?
  4. callgrind+Gprof2Dot在一起表现很好,但结果却很奇怪(见下文);

例如,这是可视化callgrind输出的调用图Gprof2Dot我从callgrind这样的命令开始

valgrind --tool=callgrind --dump-instr=yes --simulate-cache=yes --collect-jumps=yes /usr/lib64/libreoffice/program/soffice --writer

并收到四个输出文件:

-rw-------.   1 root  root          0 Jan  9 21:04 callgrind.out.29808
-rw-------.   1 root  root     427196 Jan  9 21:04 callgrind.out.29809
-rw-------.   1 root  root     482134 Jan  9 21:04 callgrind.out.29811
-rw-------.   1 root  root     521713 Jan  9 21:04 callgrind.out.29812

最后一个(pid 29812)对应于正在运行的LibreOffice Writer GUI应用程序(我用strace确定了它ps aux)。我按下CTRL+P和OK按钮。然后,我关闭了该应用程序,希望看到负责日志打印过程初始化的功能。

callgrind输出用处理,Gprof2Dot按照这个答案的工具。不幸的是,我既看不到我感兴趣的动作,也看不到调用图。

对于有关解决此类问题的正确方法的任何信息,我将不胜感激。谢谢。

在此处输入图片说明

斯蒂法诺·桑菲利波(Stefano Sanfilippo)

解决此问题的正确方法是记住LibreOffice是开源的。完整的源代码已记录在案,您可以在docs.libreoffice.org上浏览文档不要那样艰难:)

此外,请记住,打印机设置对话框不是特定于LibreOffice的,而是由OS提供的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我怎么知道哪个程序负责打开端口?

来自分类Dev

LibreOffice Writer中的源代码行结尾

来自分类Dev

如何确定从源代码安装软件的日期?

来自分类Dev

如何在“ THEN”中打印“ IF”条件的源代码

来自分类Dev

如何获取python打印功能的源代码?

来自分类Dev

如何打印HTML源代码TWIG视图的

来自分类Dev

如何在“ THEN”中打印“ IF”条件的源代码

来自分类Dev

如何从C中的struct打印,我不确定自己做错了什么,并从代码的各个部分不断收到各种错误?

来自分类Dev

节点WebKit更改源代码中的打印设置

来自分类Dev

提升日志以打印源代码文件名和行号

来自分类Dev

Python WebDriver如何打印整个页面源代码(html)

来自分类Dev

如何在windbg中打印当前源代码行?

来自分类Dev

从Spyder打印源代码而无需关闭暗模式

来自分类Dev

节点WebKit更改源代码中的打印设置

来自分类Dev

打印bash脚本的源代码及其包含的内容

来自分类Dev

如何在内核源代码中打印时间?

来自分类Dev

如何使用thymeleaf在页面的源代码中打印mensagens?

来自分类Dev

尝试绘制部分巨大源代码的序列图

来自分类Dev

关于Underscore源代码开头部分的困惑

来自分类Dev

如何使用Python Selenium获取部分html源代码?

来自分类Dev

尝试绘制部分巨大源代码的序列图

来自分类Dev

在查看时是否有隐藏HTML源代码的部分/元素?

来自分类Dev

如何通过xpath从scrapy的源代码中提取部分?

来自分类Dev

argparse 代码片段仅打印部分日志

来自分类Dev

我的打印机三星SCX-4720FN打印无限页的源代码

来自分类Dev

确定负责高I / O的特定文件

来自分类Dev

确定这部分代码的时间复杂度

来自分类Dev

是否可以从gcc的源代码中确定或设置编译器选项?

来自分类Dev

快速确定哪些源代码导致不必要的.so链接的脚本

Related 相关文章

  1. 1

    我怎么知道哪个程序负责打开端口?

  2. 2

    LibreOffice Writer中的源代码行结尾

  3. 3

    如何确定从源代码安装软件的日期?

  4. 4

    如何在“ THEN”中打印“ IF”条件的源代码

  5. 5

    如何获取python打印功能的源代码?

  6. 6

    如何打印HTML源代码TWIG视图的

  7. 7

    如何在“ THEN”中打印“ IF”条件的源代码

  8. 8

    如何从C中的struct打印,我不确定自己做错了什么,并从代码的各个部分不断收到各种错误?

  9. 9

    节点WebKit更改源代码中的打印设置

  10. 10

    提升日志以打印源代码文件名和行号

  11. 11

    Python WebDriver如何打印整个页面源代码(html)

  12. 12

    如何在windbg中打印当前源代码行?

  13. 13

    从Spyder打印源代码而无需关闭暗模式

  14. 14

    节点WebKit更改源代码中的打印设置

  15. 15

    打印bash脚本的源代码及其包含的内容

  16. 16

    如何在内核源代码中打印时间?

  17. 17

    如何使用thymeleaf在页面的源代码中打印mensagens?

  18. 18

    尝试绘制部分巨大源代码的序列图

  19. 19

    关于Underscore源代码开头部分的困惑

  20. 20

    如何使用Python Selenium获取部分html源代码?

  21. 21

    尝试绘制部分巨大源代码的序列图

  22. 22

    在查看时是否有隐藏HTML源代码的部分/元素?

  23. 23

    如何通过xpath从scrapy的源代码中提取部分?

  24. 24

    argparse 代码片段仅打印部分日志

  25. 25

    我的打印机三星SCX-4720FN打印无限页的源代码

  26. 26

    确定负责高I / O的特定文件

  27. 27

    确定这部分代码的时间复杂度

  28. 28

    是否可以从gcc的源代码中确定或设置编译器选项?

  29. 29

    快速确定哪些源代码导致不必要的.so链接的脚本

热门标签

归档