如何让kylix程序运行时脱离其编译环境?(50分)

  • 主题发起人 主题发起人 lql0459
  • 开始时间 开始时间
关注!
要不,前途何在?
 
其实这个问题一直存在.不管是1.0还是2.0,企业版还是开源版.
程序可以在kylix环境中执行,是因为kylix的启动脚本先把kylix的bin目录export到lib_path
里了,当退出kylix后,程序自然不能执行了,你可以把bin加到lib_path里或者把缺少的库文件
拷到你的lib目录下.如果程序要发布的话,那就要连库文件一起发布了.
kylix的这一点最不好!可是暇不掩玉.
 
能给一份完整的答案吗?
 
我想抛砖引玉一下,在linux下有没有一个象windows下的installshield这样的软件。
 

to Flintstone:

可自己定做RPM
 
脱离 Kylix 环境运行程序
Kylix 开发后的程序无法正常脱离 IDE 运行,这是因为它用到 CLX 的两个动态链接
库(在 /opt/kylix/bin 目录中, /opt/kylix 是我的 Kylix 安装路径,所以下面
以此为例,如果你的安装路径与我不同,相应修改它)。而默认情况下是不会自动
把查找路径加入的( Kylix 只在运行时将路径加到环境变量里,详见 Kylix 菜单中
的 Environment Options )。所以只有手动加入了:
LD_LIBRARY_PATH=/opt/kylix/bin:$LD_LIBRARY_PATH
用上面的语句可以将其加入到查找路径中,另外就是最好把 PATH 也添上:
PATH=/opt/kylix/bin:/opt/kylix/lib:/opt/kylix/help:$PATH
其中 /opt/kylix/help 不是必须的,但在 Kylix 的 EnvOptions 里有,所以最好加上。
另外,在 /opt/kylix/bin 目录下有一个叫 kylixpath 的脚本文件,运行它就可以将路
径全部设置好, source /opt/kylix/bin/kylixpath
也可以把它加到 .profile 或 .bashrc 中。我是修改了 /etc/profile 文件(RedHat 7 )
的: 将 PATH 一句改为:PATH=/opt/kylix/bin:/opt/kylix/lib:/opt/kylix/help:$PATH
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
然后在之后加一句: export LD_LIBRARY_PATH=/opt/kylix/bin
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
注意:在 Linux 中大小写是有别的, PATH 不可以写成 path !
另外还有就是编辑 ld.so.conf 加入 /opt/kylix/bin 也是不行,
一定要更改 LD_LIBRARY_PATH 才行。
如果出现这个错误信息:
"error while loading shared libraries: libqtintf.so:
cannot load shared object file: No such file or directory"
是因为找不到 QT 的共享对象文件(相当于 Windows 下在动态链接库 DLL )
造成的。确定你的机器上能找到 libqtintf.so 文件,一般在 /lib 目录下,
如果不在则需要在 /lib 目录下建立一个 Symbolink :
ln -s /相应路径/libqtintf.so /lib/libqtintf.so
 

to godzhou and other FW:
按上面的方法还是不行。没任何提示!
欢迎断续讨论!!!
 
godzhou 说的可以啊!
 
这是我在网上看到的,自己也试了.是可以的
当时我好像只改了.profile
 
谢谢 godzhou 的提示:
   在我的RedHat7.1中,确实只要修改/etc/profile文件即可!    
   但与仁兄说的有些不同:
在PATH值中加入“:**/bin:**/lib:**/help:”(不是替换而是添加),
   然后在原有export一句的下面加入: “export LD_LIBRARY_PATH=**/bin ”。
   
   说明:在操作中将**替换为你kylix的绝对路径就一切OK啦!
   祝各位在kylix做得开心!再次感谢各位的回答!!!

来,来。。。快来领分喽!!!!!!!!!!!!!!!!!!!!
 
多人接受答案了。
 
那没有安装Kylix的机器怎么运行你用Kylix开发的程序呢?
 
请你看看startkylix这个脚本,照着那样把环境设好就可以运行
我试过可以的
 
后退
顶部