Re: [libposix-development] trying to create a Debian package
Status: Pre-Alpha
Brought to you by:
hdante
From: Aníbal M. S. <an...@de...> - 2009-06-24 01:16:58
|
On Tue, Jun 23, 2009 at 11:27:50AM -0300, Henrique Almeida wrote: >Because there's a syntax error in CMakeList.txt ;-) Thanks for pointing >out. It's fixed in the repository. Thank you. >Can you try again? That fixed my build problem. When do you plan to provide proper versioned symbols? I would like to upload my package to Debian (Ubuntu will pick it up eventually) but I found some issues with the shared library. They are listed below. lintian -i /tmp/libposix/libposix_0-1_i386.changes W: libposix-dev: shlib-with-executable-stack usr/lib/libposix.so N: N: The listed shared libraries declares the stack as executable. N: N: Executable stack is usually an error as it is only needed if the code N: contains GCC trampolines or similar constructs which uses code on the N: stack. One possible source for false positives are object files built N: from assembler files which don't define a proper .note.GNU-stack N: section. N: N: To see the permissions on the stack, run readelf -l on the shared N: library and look for the program header of type GNU_STACK. In the flag N: column, there should not be an E flag set. N: W: libposix-dev: shlib-without-versioned-soname usr/lib/libposix.so libposix.so N: N: The listed shared library in a public library directory has an SONAME N: that does not contain any versioning information, either after the .so N: or before it and set off by a hyphen. It cannot therefore be represented N: in the shlibs system, and if linked by binaries its interface cannot N: safely change. There is no backward-compatible way to migrate programs N: linked against it to a new ABI. N: N: Normally, this means the shared library is a private library for a N: particular application and is not meant for general use. Policy N: recommends that such libraries be installed in a subdirectory of N: /usr/lib rather than in a public shared library directory. N: N: To view the SONAME of a shared library, run readelf -d on the shared N: library and look for the tag of type SONAME. N: N: There are some special stub libraries or special-purpose shared objects N: for which an ABI version is not meaningful. If this is one of those N: cases, please add an override. N: N: Refer to Debian Policy Manual section 10.2 (Libraries) and Debian Policy N: Manual section 8.6 (Dependencies between the library and other packages N: - the shlibs system) for details. N: W: libposix-dev: shared-lib-without-dependency-information ./usr/lib/libposix.so N: N: The listed shared library doesn't include information about which other N: libraries the library was linked against. (When running "ldd foo.so" ldd N: should report about these other libraries. In your case, ldd just N: reports "statically linked".) N: N: To fix this, you should explicitly specify the libraries which are used N: (e.g., "-lc") when building the shared library with "ld". N: N: Severity: normal, Certainty: certain |