执行Make时候找不到库文件,帮忙看看

xiaochende02 2014-05-26 05:18:11
报错信息

我的makefile

在/etc/ld.so.conf也已经添加了路径
...全文
610 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
DoDoMouse 2014-05-28
  • 打赏
  • 举报
回复
引用 4 楼 hackenliu 的回复:
从错误来看,是32bit的库在64bit机器上的编译的问题。做以排查 1 用命令 file DJITPCom.so (加上绝对路径)查看它是32bit还是64bit的库 2 uname -a 查看系统是32bit还是64bit 如果确定你的DJITPCom库是32bit,机器是64bit的话,则需要在makefile文件中 ,g++ 后面增加 -m32即可.
求教,从错误的哪里看出是32bit和64bit的问题?
KeequenLiu 2014-05-27
  • 打赏
  • 举报
回复
从错误来看,是32bit的库在64bit机器上的编译的问题。做以排查 1 用命令 file DJITPCom.so (加上绝对路径)查看它是32bit还是64bit的库 2 uname -a 查看系统是32bit还是64bit 如果确定你的DJITPCom库是32bit,机器是64bit的话,则需要在makefile文件中 ,g++ 后面增加 -m32即可.
xiaochende02 2014-05-27
  • 打赏
  • 举报
回复
引用 4 楼 hackenliu 的回复:
从错误来看,是32bit的库在64bit机器上的编译的问题。做以排查 1 用命令 file DJITPCom.so (加上绝对路径)查看它是32bit还是64bit的库 2 uname -a 查看系统是32bit还是64bit 如果确定你的DJITPCom库是32bit,机器是64bit的话,则需要在makefile文件中 ,g++ 后面增加 -m32即可.
真的是32bit的库,我的机子是64bit
JS072110 2014-05-26
  • 打赏
  • 举报
回复
确定已经在对应目录下生成了那个so文件了么?
zhxianbin 2014-05-26
  • 打赏
  • 举报
回复
incompatible 不兼容,没看见吗?
xiaochende02 2014-05-26
  • 打赏
  • 举报
回复
自己顶顶
make是在1977年在贝尔实验室(Bell Labs)研发的 Unix系统中的一款依赖关系检查工具程序(Utility software)。make的应用非常广泛,它被用来构建 C、C++ 、Pascal  Fortran 等项目,自动化构建生成可执行文件或者文件make通过读取Makefile文件以自动化建构软件, 它会根据依赖文件的修改时间进行判断。确定一个target的依赖关系,然后把生成这个target的相关命令传给shell去执行。GNU make 和大多数版本的 make 之间最重要的区别是 GNU make 是自由软件,常和GNU编译系统一起被使用,是大多数GNU Linux安装的一部分。GNU makemakefile 中具有许多强大的功能,超出了其他 make 版本的功能,它还可以重新生成、使用、然后删除不需要保存的中间文件。GNU make 还有一些非常方便的简单功能。例如,选项“假装源文件文件没有更改,即使它已更改。当您向头文件添加新宏时,这非常有用。大多数版本的 make 都会假设它们必须重新编译所有使用头文件的源文件,但是如果您知道对头文件的更改不需要重新编译 GNU make 为您提供了一种避免重新编译的方法-o file 。 黄强老师针对零编程基础的同学,精心打磨make核心知识点,帮助你快速掌握Linux编程中的make的构建!适用人群: 零基础、新手、想快速学习Linux下C、C++编程的童鞋!

23,124

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧