请教:关于gtk移植,程序无法开机自动运行!

内核编译和嵌入式产品的设计与开发
回复
youngs
帖子: 2
注册时间: 2009-08-07 15:18

请教:关于gtk移植,程序无法开机自动运行!

#1

帖子 youngs » 2009-08-31 12:09

新人报道,并请教高人:
近日在做嵌入式linux方面的学习,移植了gtk2.0。自己写了程序后,能在终端运行程序,却不能开机自动运行。自己试了一个没用到gtk库的程序(只用了基本c库),可以做到开机自动运行。
rcs文件的一段: PATH=/gtkarm/lib:/gtkarm/in: (我的gtk处于根目录/gtkarm中)。
最后 一行: ./my_test & (my_test是我写的用到gtk库的程序)

开机后就说找不到libgtk-directfb-2.0.so.0。我想,路径应该添加的没错,怎么老是找不到库?
最后一横心,把gtk的lib全复制到/lib中(根目的/lib),这回就对了,能够自动运行,进入图形界面了 :em11

就是搞不明白,难道是我把gtk的库路径添加错误了吗?请高人指教!
iceke
帖子: 9
注册时间: 2009-08-02 20:55

Re: 请教:关于gtk移植,程序无法开机自动运行!

#2

帖子 iceke » 2009-08-31 13:25

建议看一下库文件的软连接指向
youngs
帖子: 2
注册时间: 2009-08-07 15:18

Re: 请教:关于gtk移植,程序无法开机自动运行!

#3

帖子 youngs » 2009-08-31 15:51

回2楼:“库文件的软连接指向”我还不知道具体怎么弄,这与程序的运行有什么关系。

只是奇怪从终端运行程序可行,而自动运行不行。但只用c库的程序都能运行,肯定是我这些库与系统存在的关联没弄正确。
了解到为了让执行程序顺利找到动态库,有三种方法:
1:把库拷贝到/usr/lib和/lib目录下。
2:LD_LIBRARY_PATH环境变量中加上库所在路径。
3:修改/etc/ld.so.conf文件。
目前我这是第3种行不通,文件系统根本没这个文件(是我肤浅,也许可以生成制作,只是我这里没有)。第2种照办了,依然没能工作。索性就按第1种,才能正常工作。

虽然现在能跑程序,但是心里总有个疙瘩,不解决怪难受。
头像
jarryson
帖子: 4002
注册时间: 2005-08-14 19:53

Re: 请教:关于gtk移植,程序无法开机自动运行!

#4

帖子 jarryson » 2009-08-31 19:23

应该是系统启动到那个时候还没有加载path吧,只能认/lib /bin之类的目录
iceke
帖子: 9
注册时间: 2009-08-02 20:55

Re: 请教:关于gtk移植,程序无法开机自动运行!

#5

帖子 iceke » 2009-09-06 10:32

re: youngs
软链接,就是ln -s
有时候就是库的指向没有弄好(其实类似win的快捷键),因为你是编译好后移植过去的,所以可能会有这种情况。你那个文件是动态库,估计本身没什么内容,只是一个指向文件。正如 jarryson 所说,你的path应该存在问题的。
回复