libcurl.so vs libcurl.so.4
#1
I was looking into the reason that the Bablylon Beta1 ubuntu runtime package for xbmc-common has a dependency on libcurl4-openssl-dev. This doesn't seem like it should be required for a runtime package.

What I saw is that there is an explicit file open being done on /usr/lib/libcurl.so, because of the following in Makefile.include.in:
ifeq (linux,$(findstring linux, $(ARCH)))
ifeq ($(ARCH), x86_64-linux)
DEFINES+=-DDLL_PATH_LIBCURL="\"/usr/lib64/libcurl.so\""
else
DEFINES+=-DDLL_PATH_LIBCURL="\"/usr/lib/libcurl.so\""
endif
endif

I was able to fix the crash at startup without the dev package installed, and I seem to have reasonable network functionality (weather, scrapers, etc). Basically, I just changed them to use the runtime shared library that the dev library symlinks to anyway:

ifeq (linux,$(findstring linux, $(ARCH)))
ifeq ($(ARCH), x86_64-linux)
DEFINES+=-DDLL_PATH_LIBCURL="\"/usr/lib64/libcurl.so.4\""
else
DEFINES+=-DDLL_PATH_LIBCURL="\"/usr/lib/libcurl.so.4\""
endif
endif

Is there a reason it was done this way? Or is this an oversight? It would be nice to be able to remove this dependency for final release to be able to support smaller footprint systems. On my HTPC, this 1 dev library ends up pulling in all of the base dev libraries, gcc, etc.
Reply
#2
libcurl.so should be a symlink to libcurl.so.4, sounds like your distro is broken.
I am not scared of SVN - Cutting my hands open on the bleeding edge.
Reply
#3
But only for the purposes of linking using -llibcurl, right?. There shouldn't be runtime references to it. At least, there are none in any other runtime package.
Reply
#4
I am not 100% sure about it, but you will find that most libs in linux have a simlink without the version appended that points to the current major version. This is so that you can link a program against the common name, and not have the app break as the underlying library is upgraded/replaced with a newer/older version.
I am not scared of SVN - Cutting my hands open on the bleeding edge.
Reply
#5
ishan Wrote:I modified XBMC to support few functionalities but now it crashes after playing for a couple of hours saying mmap failed to allocate memory in shm.c

Post this once more and you'll find yourself banned. 6 posts of the same message over 4 threads smells bot to me.

If you're legit, follow the guide on posting about a problem in a useful manner.
Reply

Logout Mark Read Team Forum Stats Members Help
libcurl.so vs libcurl.so.40