2012-05-29 2 views
0

나는 공유 객체 라이브러리를 빌드하는 라이브러리를 가지고있다. git.netfilter.org의 libnetfilter_cthelper 라이브러리입니다. ./conifgure;make;make 설치시 라이브러리는 공유 객체 라이브러리를 설치합니다. 데비안 패키지를 만들었을 때 공유 객체를 만들지 만 심볼이 없습니다.공유 객체를 생성하는 데비안 패키지 빌드하기

공유 객체 파일을 빌드하는 데비안 패키지를 만드는 간단한 방법이 있습니까? 어떤 방법으로 그것을 디버깅 할 수 있습니까? 아니면 좋은 튜토리얼이 있습니다. 나는 패키지를 이해하거나 구축하기위한 깔끔한 단계가없는 많은 것을 읽었습니다.

+1

지금까지 무엇을 사용하고 계셨습니까? 당신의 질문에서'debhelper'와'dh-make'가 떠오르지 만 아직 시도하지 않았다면 조금 놀랐습니다. – tripleee

+0

@ tripleee 음, 그렇습니다. 나는 처음에는 우리가 가지고있는 템플릿을 가지고 작업을 시작했으나 마침내 템플릿은 공유 된 객체에 좋지 않다는 것을 알게되었습니다. 마지막으로, dh-make로 모든 것을 다시 포장했지만, 지금은 잘 작동하는 것처럼 보입니다. 그러나 무엇이 거기 깨 졌는지 나는 알지 못합니다. –

답변

1

일어날 것으로 예상되는 것과 모든 방법을 알기를 원하면 http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html의 가장 좋은 참조 정보는 댄서의 것입니다. 그것은 아마도 당신이 찾고있는 것이 아닙니다. 그것은 자습서가 아니며 "깨끗한 단계"라고 할 수 없습니다.

데비안/규칙 파일을 보지 않고도 무엇이 손상되었는지 알기가 어렵습니다. 패키지의 .so 파일이 기호를 내 보내지 않았거나 디버그 기호가없는 것을 의미합니까? $builddir/debian/{$packagename,tmp} 아래의 foo.so 버전에 올바른 기호가 내보내 졌는지 먼저 확인하여 문제를 디버깅하기 시작합니다. 그렇지 않은 경우, 업스트림 빌드 시스템 또는 사용 방법에 문제가 있습니다.

+0

튜토리얼을 보내 주셔서 감사합니다. 잘 모르는 것들이 있습니다. 업스트림 소스에서 dh_make를 사용하여 모든 것을 다시 패키징 할 때 문제가 해결되었습니다. –

관련 문제