zoukankan      html  css  js  c++  java
  • Linux下动态链接库 与gcc 选项

    -L 编译时查找动态链接库的路径

    -lxxx(小写)  e.g -lcudart   = link libcudart.so  , 

    -I(大写) 头文件的路径

    -rpath (-R), 编译时指定链接动态库的路径

    可以用ldd <your_execute>看看是不有 ‘not found’在你链接的库后面,

    解决方法是通过-Wl,rpath=<your_lib_dir>,使得execute记住链接库的位置

    LD_LIBRARY_PATH  程序运行时查找动态库的路径

    C_INCLUDE_PATH  gcc环境变量

    http://www.cnblogs.com/wiessharling/archive/2013/09/28/3344711.html
    gtk1.2的链接参数生成程序是gtk-config,执行gtk-config --libs就能得到以下输出"-L/usr/lib -L/usr/X11R6/lib -lgtk -lgdk -rdynamic

    -lgmodule -lglib -ldl -lXi -lXext -lX11 -lm",这就是编译一个gtk1.2程序所需的gtk链接参数,xxx-config除了--libs参数外还有一个参数是--cflags用来生成头文件包含目录的,也就是-I参数,在下面我们将会讲到。你可以试试执行gtk-config --libs --cflags,看看输出结果

    现在的问题就是怎样用这些输出结果了,最笨的方法就是复制粘贴或者照抄,聪明的办法是在编译命令行里加入这个`xxxx-config --libs --cflags`,比如编译一个gtk程序:gcc gtktest.c `gtk-config --libs --cflags`这样就差不多了。注意`不是单引号,而是1键左边那个键

  • 相关阅读:
    day36-20180705笔记
    day33-20180626笔记
    day31-20180612笔记
    day30-20180610笔记
    day29-20180607笔记
    day28-20180605笔记
    day26-20180531笔记
    微信开发之自定义菜单--weixin-java-tools
    几种常用的json序列化和反序列化工具介绍
    微信开发之消息接收与回复--weixin-java-tools
  • 原文地址:https://www.cnblogs.com/huashiyiqike/p/3949649.html
Copyright © 2011-2022 走看看