[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: warning: symbol PyLong_FromUnsignedLong...

* Mathieu Malaterre <malat@debian.org>, 2012-04-13, 13:11:
BTW, does anybody know how to stop libtool from adding SONAME? I would expect that "-module -avoid-version" does that, but it's not the case.

Same question for cmake [1]. I am tempted to simply fill a bug against cmake/debian package. CMake supports the notion of module, but still add the -Wl,-soname switch to those.

I used to maintain a Python+cmake package and I didn't find any sane way do to that. I ended up with sed-editing link.txt files, something like this:

	find -name 'link.txt' -exec sed -i \
	  -e 's/ -Wl,-soname,[^ ]\+ / /' \
	  {} +

Or, alternatively: is there a way to remove SONAME from an existing library?
I have been searching for such tool also. I found chrpath which use the low level read_elf() API to manipulate .so, but I could not find anything else.

Turning chrpath codebase into a tool to edit/remove SONAMEs shouldn't be very difficult. I'm not sure it's worth effort, though.

Another way to approach this problem would be to write a wrapper for gcc that filters out spurious -Wl,-soname,... arguments.

Jakub Wilk

Reply to: