发布新日志

  • 发布新日志 linux/fusion.h 缺少

    2009-04-27 10:20:52

    下载 linux-fusion-8.1.1.tar.gz 该包,然后直接 make install 即可

  • ubuntu 7.10 安装 3D 桌面,没有标题栏的解决办法

    2009-04-23 17:40:05

    今天心血来潮在公司的电脑上安装了3D,结果重启pc,发现打开的窗口没有标题栏,关闭最大化最小化都又问题,唉,郁闷死我了。我试着把3D的配置文件给删除了,结果还是不能解决问题,后来把显卡驱动卸载了,重启电脑是解决问题了,但是新的问题又来了,没有显卡驱动,编译代码时候,刷屏很慢,这样解决这个问题,肯定不行,

    我装了3次系统,这就是我今天心血来潮的代价。

    后来发现只要把 视觉特效中none选中,就解决一切问题了,但是,就是不能再使用3D了

  • libfetion 编译

    2009-04-22 09:34:47

            飞信的出现,省下不少我们的银子,但是,windows上安装飞信就是下一步,下一步就搞定了,但是在linux上的飞信版本很少,而且有时候,不能靠sudo dpkg -i XXX ,来安装这个软件,必须自己编译,这样会有很多的问题。
            其中用户量最多的应该是邓东东主持开发的libfetion版本,现在是0.93版本了,以前0.8x支持ubuntu 7.10 版本的,但是现在没有这个版本了,直接下载deb包,安装在ubuntu 7.10 上,根本就不能使用,所以自己编译一个
    准备步骤:
    1:建立编译环境:
    在终端执行以下命令:
    sudo apt-get install automake
    sudo apt-get install libc-dev
    sudo apt-get install g++
    sudo apt-get install libcurl4-openssl-dev
    sudo apt-get install libqt4-dev qt4-dev-tools (安装qt3也是可以使用的,不过挺麻烦的)

    2:下载源代码:
    源码下载: http://www.libfetion.cn/Linux_demoapp_download.html
    解压命令:tar -zxvf linux_fetion-0.*.*.tar.gz
    进入源代码目录: cd linux_fetion-0.*.*
    (64位用户需执行: ./64_libfetion.sh 脚本)
    运行编译命令: qmake-qt4;make
    安装程序:./install.sh

    大家一定要注意:如果你的操作系统是64位的,直接安装上面步骤运行脚本即可,
    如果,不是64位(你的操作系统不支持64位或者你的cpu不是64位,会报版本不兼容问题),那么你直接执行编译命令就行了
    运行编译命令: qmake-qt4;make
    安装程序:./install.sh
    或者你直接把脚本里面的64位那个变量改位0也行,反正就看自己了,
  • linux 调试工具

    2009-01-09 15:51:20

    linux 调试工具总结
     
    一些常见的调试工具进行一下总结.
     
    【1】
    名称:MEMWATCH
    功能:
        1、MEMWATCH 支持 ANSI C
        2、它提供结果日志纪录
        3、能检测双重释放(double-free)
        4、错误释放(erroneous free)
        5、没有释放的内存(unfreed memory)、
        6、溢出和下溢等等。
    参考文献:
          【1】:http://blog.csdn.net/lengxingfei/archive/2006/08/09/1040800.aspx

    【2】
    名称:YAMD
    功能:
        1、查找 c 和 c++ 中动态的、与内存分配有关的问题
    参考文献:
         【1】http://www.cs.hmc.edu/~nate/yamd/
         【2】http://www.ppsql.com/server/p262/J26232224_2.shtml
     

    【3】
    名称:electric fence
    功能:
        1、检测内存泄露
        2、检查数据越界
        3、分配受保护的内存
    参考文献:
        【1】http://book.opensourceproject.org.cn/embedded/oreillybuildembed/index.html?page=opensource/belinuxsys-chp-11-sect-4.html
        【2】http://book.opensourceproject.org.cn/embedded/oreillybuildembed/opensource/belinuxsys-chp-11-sect-4.html
        【3】http://www.ppsql.com/server/p262/J26232224_3.shtml
     

    【4】
    名称:strace
    功能:
        1、显示用户空间程序发出的系统调用
        2、显示调用的参数和返回值
     

    【5】
    名称:gdb
    功能:
        1、启动程序
        2、使程序能够停止在指定文件的指定位置
        3、查看程序变量值
        4、改变程序执行期间的相关变量、路径等
     
     
    【6】
    名称:Oops 
    功能: 显示系统错误信息
    参考文献:
        【1】http://www.ibm.com/developerworks/cn/linux/sdk/l-debug/
     
     
    【7】
    名称:mtrace
    功能:
        1、检测一些内存分配和泄漏的失败等
    参考文献:
        【1】http://www.vbaccelerator.com/home/VB/Code/Techniques/RunTime_Debug_Tracing/mTrace_bas.asp
        【2】http://www.yuanma.org/data/2006/0612/article_789.htm
        【3】http://www.mylinux.com.cn/HTML/1183705958487.html
     

     
    【8】
    名称:binutil
    说明:binutil为一个工具集合,包含如下的工具。
         addr2line  把程序地址转换为文件名和行号。在命令行中给它一个地址和一个可执行文件名,它就会使用这个可执行文件的调试信息指出在给出的地址上是哪个文件以及行号。
         ar   建立、修改、提取归档文件。归档文件是包含多个文件内容的一个大文件,其结构保证了可以恢复原始文件内容。
        as   主要用来编译GNU C编译器gcc输出的汇编文件,产生的目标文件由连接器ld连接。
        c++filt  连接器使用它来过滤 C++ 和 Java 符号,防止重载函数冲突。
        gprof   显示程序调用段的各种数据。
        ld   是连接器,它把一些目标和归档文件结合在一起,重定位数据,并链接符号引用。通常,建立一个新编译程序的最后一步就是调用ld。
        nm   列出目标文件中的符号。
        objcopy 把一种目标文件中的内容复制到另一种类型的目标文件中.
        objdump  显示一个或者更多目标文件的信息。显示一个或者更多目标文件的信息。使用选项来控制其显示的信息。它所显示的信息通常只有编写编译工具的人才感兴趣。
        ranlib  产生归档文件索引,并将其保存到这个归档文件中。在索引中列出了归档文件各成员所定义的可重分配目标文件。
        readelf  显示ebf格式可执行文件的信息。
        size   列出目标文件每一段的大小以及总体的大小。默认情况下,对于每个目标文件或者一个归档文件中的每个模块只产生一行输出。
        strings  打印某个文件的可打印字符串,这些字符串最少4个字符长,也可以使用选项-n设置字符串的最小长度。默认情况下,它只打印目标文件初始化和可加载段中的 可打印字符;对于其它类型的文件   它打印整个文件的可打印字符,这个程序对于了解非文本文件的内容很有帮助。
        strip   丢弃目标文件中的全部或者特定符号。
        libiberty  包含许多GNU程序都会用到的函数,这些程序有: getopt, obstack, strerror, strtol 和 strtoul.
       libbfd  二进制文件描述库.
       libopcodes  用来处理opcodes的库, 在生成一些应用程序的时候也会用到它, 比如objdump.Opcodes是文本格式可读的处理器操作指令.
    功能:程序调试、归档等
    参考文献:
     
     
    【9】
    名称: Purify
    功能:内存检查工具
    参考文献:
     
     
    【10】
    名称:pc-lint
    功能:C/C++的静态代码检测工具
    参考文献:
          【1】http://dev.yesky.com/134/2593634.shtml
     
     
    【11】
    名称:splint
    说明:splint是一个动态检查C语言程序安全弱点和编写错误的程序
    功能:
        1、空引用错误
        2、未定义的变量错误
        3、类型错误
        4、内存检查
    参考文献:
        【1】http://www.turbolinux.com.cn/turbo/wiki/doku.php?id=splint&DokuWiki=e3b300af2d101a8bec5a4c805e678823
        【2】http://www.splint.org/
     

    【12】
    名称:boundercheck
    功能:检查内存泄露
     

    【13】
    名称:valgrind
    功能:
        1、检查内存错误
    参考文献:
  • ggcov: error while loading shared libraries: libbfd-2.17.50.0.6.so:

    2008-12-10 09:58:41

    ggcov: error while loading shared libraries: libbfd-2.17.50.0.6.so: cannot open shared object file: No such file or directory

    $ locate libbfd
    /usr/lib/libbfd-2.8.0.so

    sudo ln -s /usr/lib/libbfd-2.8.0.so  /usr/lib/libbfd-2.17.50.0.6.so
Open Toolbar