• 环境变量LD_LIBRARY_PATH的传递


    http://bbs.chinaunix.net/thread-3680861-1-1.html

    execv明显没有传环境变量,execle或execve才会带
    在启动shell设置的LD_LIBRARY_PATH根本传不到b程序

    http://bbs.pediy.com/thread-217130.htm

    为了使 Set-UID 程序更加安全,不受LD_LIBRARY_PATH环境变量的影响,

    运行时的链接器或加载器(ld.so)会忽略环境变量,如果程序是个 Set-UID 程序。

    http://www.cnblogs.com/tonychai/p/4624979.html

    export  LD_LIBRARY_PATH=LD_LIBRARY_PATH:/XXX 但是默认登出后就失效

    同样事例,可惜没有方案:

    apache httpd 如何修改 LD_LIBRARY_PATH,一直修改失败
    ver:httpd 2.4.7 mod_fcgid-2.3.9
    目前使用 mod_fcgid-2.3.9 解析C/C++编写的fastcgi和cgi,名称是 a.fcgi,发现无法启动,
    错误是
    error while loading shared libraries: liblog4cplus-1.1.so.9: cannot open shared object file: No such file or directory

    因为我们准备写的cgi 需要链接一个动态库 liblog4cplus-1.1.so.9。
    但是发现无法修改 LD_LIBRARY_PATH,我们不希望这个动态库放到系统目录下,或者修改全局的/etc/ld.so.conf,
    所以放到了一个指定的目录 /usr/local/aa/liblog4cplus-1.1.so.9下。我们修改了下面的文件
    /usr/local/apache/bin/envvars
    /usr/local/apache/conf/httpd.conf
    /usr/local/apache/conf/extra/httpd-vhosts.conf
    对应增加了(/usr/local/aa),大致语法如下
    SetEnv LD_LIBRARY_PATH /usr/local/apache/lib:/usr/local/aa
    SetEnv LD_LIBRARY_PATH_a ${LD_LIBRARY_PATH}:/usr/local/aa
    LoadModule fcgid_module modules/mod_fcgid.so 

    后面我们发现,变量 LD_LIBRARY_PATH_a ,cgi 能读取到,但是变量 LD_LIBRARY_PATH
    无法修改,一直都是 LD_LIBRARY_PATH=/usr/local/apache/lib。
    导致链接指定动态库的 cgi 一直失败!!

  • 相关阅读:
    C# 拖放操作源码详解
    Dev系列控件之XtraCharts(一)
    DateEdit如果开启Vista模式并显示日期+时间模式
    DevXpress控件: 第二篇将绘图进行到底: Charter控件(附图)
    C#操作Word (1)Word对象模型
    文曲星猜数,纯粹乱写
    转 浩方原理初步分析
    生成变换方向矩阵
    关于嵌套类的调用更新问题
    所有前n位可以被n整除的9位数
  • 原文地址:https://www.cnblogs.com/johnsonshu/p/7392507.html
Copyright © 2020-2023  润新知