CheckInstall로 패키지 만들기

feanor의 이미지

CheckInstall
http://asic-linux.com.mx/~izto/checkinstall/

CheckInstall은 아무런 노력 없이 슬랙웨어, 레드햇, 데비안 패키지를 쉽게 만들 수 있게 해 줍니다.

./configure; make를 하셨나요? 그럼 sudo make install 대신 checkinstall을 하세요.

checkinstall -S: 슬랙웨어 패키지를 만듭니다.
checkinstall -R: RPM 패키지를 만듭니다.
checkinstall -D: 데비안 패키지를 만듭니다.

이렇게 자동으로 만들어진 패키지를 사람이 만든 패키지와 비교할 수는 없겠습니다만, 프로그램 제거가 쉬워지고 패키지 시스템을 그대로 이용할 수 있다는 것만으로도 많은 쓸모가 있다고 생각합니다.

make install 했는데 프로그램을 어떻게 제거하나요? 라는 질문을 받으시면, 이제부터는 CheckInstall을 알려주세요. :-)

--feanor

Forums: 
feanor의 이미지

KLDP 검색만으로도

http://bbs.kldp.org/viewtopic.php?t=5047
http://bbs.kldp.org/viewtopic.php?t=8620
http://bbs.kldp.org/viewtopic.php?t=26112
http://bbs.kldp.org/viewtopic.php?t=26358
http://bbs.kldp.org/viewtopic.php?t=27579
http://bbs.kldp.org/viewtopic.php?t=35900

엄청 많군요. 저 글타래에서 프로그램을 어떻게 "깨끗이" 제거하느냐고 (저는 개인적으로 이런 걱정을 할 필요가 전혀 없다고 생각하고, "깨끗이"를 찾는 것은 윈도우즈에 물든 탓이라고 봅니다만) 물어보신 분은 모두 한번 CheckInstall을 써 보시는 건 어떨까요?

--feanor

blacknblue의 이미지

좋은정보 감사.....

atie의 이미지

checkinstall을 해서 만든 패키지가 설치 중에 실패를 하게되면, 잘못 만들어진 패키지는 rm으로 삭제를 할 수 있지만 dpkg -l 이나 synaptic등에서 search하면 잘못된 패키지 정보가 그대로 남겨져 있습니다.
이 정보까지도 삭제를 하려면, /var/lib/dpkg/status 파일을 열어 그 패키지에 대한 것만 꼭집어 없애 버리면 됩니다. 이것을 dpkg나 checkinstall에 옵션으로 처리하는 방법이 있는지는 모르겠습니다.

----
I paint objects as I think them, not as I see them.
atie's minipage

keizie의 이미지

feanor wrote:
"깨끗이"를 찾는 것은 윈도우즈에 물든 탓이라고 봅니다

맞는 말입니다.

다만, 저는 이따금 /usr/lib이나 /usr/include 같은 데 빈 디렉토리만 남겨두고 지워져버린 패키지를 보면 아쉽습니다. 파일을 설치할 때 필요해서 디렉토리를 따로 만들고는, 나중에는 패키지 정보에 파일만 있으니까 파일을 지우고 애초에 만들었던 디렉토리는 안 지우는 거죠. 낡은 버전의 라이브러리 디렉토리가 빈 채로 있다거나 하는 게 그런 식입니다.

이런 경우는 어떻게 하면 고칠 수 있을까요? 프로그램마다 고치는 건 한계가 있을 것 같은데 말이죠.

jinserk의 이미지

kz wrote:
feanor wrote:
"깨끗이"를 찾는 것은 윈도우즈에 물든 탓이라고 봅니다

맞는 말입니다.

다만, 저는 이따금 /usr/lib이나 /usr/include 같은 데 빈 디렉토리만 남겨두고 지워져버린 패키지를 보면 아쉽습니다. 파일을 설치할 때 필요해서 디렉토리를 따로 만들고는, 나중에는 패키지 정보에 파일만 있으니까 파일을 지우고 애초에 만들었던 디렉토리는 안 지우는 거죠. 낡은 버전의 라이브러리 디렉토리가 빈 채로 있다거나 하는 게 그런 식입니다.

이런 경우는 어떻게 하면 고칠 수 있을까요? 프로그램마다 고치는 건 한계가 있을 것 같은데 말이죠.

답은 아닙니다만, 리눅스에서도 Mac OS X 에서 하듯이 그냥 폴더 카피 정도로 프로그램 설치가 완료되도록 만들수는 없을까요?
아직도 유닉스 파일 시스템의 잔재가 남아서 /usr/bin 이니 /usr/sbin 이니 /usr/local/bin 이니 하는 구조가 그대로 쓰이다보니 이런 고민이 나오는것 같은데요.

설정파일까지 싸그리 잡아서 어플 이름으로 디렉토리를 만들고 나중에는 그것만 날리면 관련 내용이 다 날아갈 수 있다면 정말 얼.마.나. 좋을지 모르겠습니다. :(

Leo.

hys545의 이미지

jinserk wrote:
kz wrote:
feanor wrote:
"깨끗이"를 찾는 것은 윈도우즈에 물든 탓이라고 봅니다

맞는 말입니다.

다만, 저는 이따금 /usr/lib이나 /usr/include 같은 데 빈 디렉토리만 남겨두고 지워져버린 패키지를 보면 아쉽습니다. 파일을 설치할 때 필요해서 디렉토리를 따로 만들고는, 나중에는 패키지 정보에 파일만 있으니까 파일을 지우고 애초에 만들었던 디렉토리는 안 지우는 거죠. 낡은 버전의 라이브러리 디렉토리가 빈 채로 있다거나 하는 게 그런 식입니다.

이런 경우는 어떻게 하면 고칠 수 있을까요? 프로그램마다 고치는 건 한계가 있을 것 같은데 말이죠.

답은 아닙니다만, 리눅스에서도 Mac OS X 에서 하듯이 그냥 폴더 카피 정도로 프로그램 설치가 완료되도록 만들수는 없을까요?
아직도 유닉스 파일 시스템의 잔재가 남아서 /usr/bin 이니 /usr/sbin 이니 /usr/local/bin 이니 하는 구조가 그대로 쓰이다보니 이런 고민이 나오는것 같은데요.

설정파일까지 싸그리 잡아서 어플 이름으로 디렉토리를 만들고 나중에는 그것만 날리면 관련 내용이 다 날아갈 수 있다면 정말 얼.마.나. 좋을지 모르겠습니다. :(


맥 os 도 다른건 몰라도 설정파일은 완전히 안지워집니다.
그래서 수동 제거툴 제공하기도 합니다.

즐린

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.