红联Linux门户
Linux帮助

Package helloworld is missing dependencies for the following

发布时间:2016-02-23 10:06:50来源:linux网站作者:Devin-zhou

这个是在我在Openwrt的SDK下编译模块的时候碰到的问题。

Package helloworld is missing dependencies for the following libraries: libc.so.6

缺少类库,然后其实我发现我的类库在系统里是存在的:

locate libc.so.6

结果:

/lib/i386-linux-gnu/libc.so.6
/lib64/libc.so.6

明显存在,我用的应该是上面的那个类库,然后我弄了一晚上没弄好,今天所有工作做完终于弄好了。我做的工作包括这些:


第一步:

把/lib/i386-linux-gnu/libc.so.6这个文件拷贝到/home/user/attitude/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/lib这里。其中attitude是我的配置的Openwrt的编译环境。

cp /lib/i386-linux-gnu/libc.so.6 /home/user/attitude/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/lib


第二步:

在你写的代码文件夹下(我写的是个helloworld)下的Makefile里

增加:DEPENDS:=+libc

就是在:

define Package/helloworld 
SECTION:=utils 
CATEGORY:=Utilities 
TITLE:=Helloworld -- prints a snarky message 
DEPENDS:=+libc
endef

这个define下面。


第三步:也是在Makefile里增加:

define Package/helloworld/install 
$(INSTALL_DIR) $(1)/bin 
$(CP) /lib/i386-linux-gnu/libc.so.6 $(1)/bin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/helloworld $(1)/bin/ 
endef

这里多了一行$(CP)的代码。


最后一步:

在/home/user/attitude/staging_dir/target-mips_r2_uClibc-0.9.33.2/pkginfo下的libc.provides文件里增加两行:

/lib/i386-linux-gnu/libc.so.6
libc.so.6

这样子就解决了。


本文永久更新地址:http://www.linuxdiyf.com/linux/18307.html