PC编译 mjpg_streamer.c:(.text+0x122): undefined reference to `dlclose'

时间:2022-09-26 05:30:55
网上说要对使用dlopen的文件编译时加上-ldl
在Makefile.in中LDFLAGS = xx -ldl栏中添加后面的-ldl选项
 但在mjpg_stream的每个文件夹的Makefile中都已有LFLAGS += -lpthread -ldl,求解,该如何解决

6 个解决方案

#1


不会你的pc只有dlopen的头文件却没有dlopen的库吧

自己写一个简单的测试程序,使用一下dlopen,看看能否编译通过

#2


我写了一个测试程序,是同样的错误,应该是缺少dl库,可是我不知道怎么安装

#3


我写了一个测试程序,是同样的错误,应该是缺少dl库,可是我不知道怎样安装

#4


你的pc /usr/lib/目录下没有 libdl.a   libdl.so 这两个文件吗
这个应该是很基本的库啊

你的pc是什么linux发行版本? gcc相关的库可能没有全安装

#5


也曾遇到过相同问题,百度实在不给力,google后解决了,贴出原帖地址:http://ubuntuforums.org/showthread.php?t=1888233
不是修改什么-ldl, 我修改了无数次都不管用
解决方法:
修改Makefile中的
        $(APP_BINARY): mjpg_streamer.c mjpg_streamer.h mjpg_streamer.o utils.c utils.h utils.o
        $(CC) $(CFLAGS)  $(LFLAGS) $(OBJECTS)  -o $(APP_BINARY)
        chmod 755 $(APP_BINARY)

     为:
        $(APP_BINARY): mjpg_streamer.c mjpg_streamer.h mjpg_streamer.o utils.c utils.h utils.o
        $(CC) $(CFLAGS)  $(OBJECTS) $(LFLAGS) -o $(APP_BINARY)
        chmod 755 $(APP_BINARY)

但是修改后后面还有错误,所以,大家出现这些错误肯定是下了很旧的版本的mjpg-stream了,请大家移步http://mjpg-streamer.svn.sourceforge.net/viewvc/mjpg-streamer/mjpg-streamer/
点击右下角 Download GNU tarball 下载最新的code,没有错误了!

#6


该回复于2014-11-06 09:39:00被管理员删除

#1


不会你的pc只有dlopen的头文件却没有dlopen的库吧

自己写一个简单的测试程序,使用一下dlopen,看看能否编译通过

#2


我写了一个测试程序,是同样的错误,应该是缺少dl库,可是我不知道怎么安装

#3


我写了一个测试程序,是同样的错误,应该是缺少dl库,可是我不知道怎样安装

#4


你的pc /usr/lib/目录下没有 libdl.a   libdl.so 这两个文件吗
这个应该是很基本的库啊

你的pc是什么linux发行版本? gcc相关的库可能没有全安装

#5


也曾遇到过相同问题,百度实在不给力,google后解决了,贴出原帖地址:http://ubuntuforums.org/showthread.php?t=1888233
不是修改什么-ldl, 我修改了无数次都不管用
解决方法:
修改Makefile中的
        $(APP_BINARY): mjpg_streamer.c mjpg_streamer.h mjpg_streamer.o utils.c utils.h utils.o
        $(CC) $(CFLAGS)  $(LFLAGS) $(OBJECTS)  -o $(APP_BINARY)
        chmod 755 $(APP_BINARY)

     为:
        $(APP_BINARY): mjpg_streamer.c mjpg_streamer.h mjpg_streamer.o utils.c utils.h utils.o
        $(CC) $(CFLAGS)  $(OBJECTS) $(LFLAGS) -o $(APP_BINARY)
        chmod 755 $(APP_BINARY)

但是修改后后面还有错误,所以,大家出现这些错误肯定是下了很旧的版本的mjpg-stream了,请大家移步http://mjpg-streamer.svn.sourceforge.net/viewvc/mjpg-streamer/mjpg-streamer/
点击右下角 Download GNU tarball 下载最新的code,没有错误了!

#6


该回复于2014-11-06 09:39:00被管理员删除