기본 콘텐츠로 건너뛰기

글

라벨이 RedHat인 게시물 표시

RedHat/Debian 패키지 관리 명령

어후... RedHat하고 Debian하고 너무 다른 길을 걸어온 지 오래라서, 일부 명령어나 디렉토리 등이 꽤 다르다. 그나마 그런 건 실제 개발과정에서 크게 신경 쓰지 않는 부분(CMake나 autotools가 알아서 연결해주니까)이지만, 패키지 관리는 할 때마다 찾아봐야한다. 특히나 RedHat은 yum과 rpm으로 대부분 통합하였지만, Debian은 뭐가 이리 많아... ㅠㅠ 익숙치 않아서 매번 찾아보는데, 한참만에 찾아보니 매번 영어를 해석해야하니 귀찮아서 블로그에 대충대충 남겨본다. 참조: SwitchingToUbuntu/FromLinux/RedHatEnterpriseLinuxAndFedora GUI 이용하면 어찐다저찐다 하지마라. 만족스럽게 동작하는 놈이 아직도 없다. ㅠㅠ (Blogger.com 에디터에 표 삽입이 없다니!) 작업 RedHat Debian 사용 가능 패키지 목록 갱신 (YUM이 알아서 매번 갱신. 오! 진리의 YUM!) apt-get update 저장소에서 패키지 설치 yum install [PACKAGE] apt-get install [PACKAGE] 패키지 파일을 직접 설치 yum install [PACKAGE_FILE].rpm 또는 rpm -i [PACKAGE_FILE].rpm dpkg --install [PACKAGE_FILE].deb 패키지 삭제 yum remove [PACKAGE] rpm -e [PACKAGE] RPM명령은 의존에 따른 한꺼번에 삭제를 지원하지 않으므로 yum을 쓰는게 좋다. apt-get remove [PACKAGE] 설정까지 같이 패키지 삭제 apt-get purge [PACKAGE] 패키지 업데이트 확인 yum check-update apt-get -s upgrade apt-get -s dist-upgrade 시스템 업그래이드 yum upgrade apt-get dist-upgrade 사용 가능 패키지 찾기 yum search [PACKAGE] apt-c...

find-debuginfo.sh에서 오류가 났을 경우

Source RPM을 빌드하다가 아래와 같은 문구를 출력하면서 뻗을 때가 있다. + /usr/lib/rpm/find-debuginfo.sh /usr/src/redhat/BUILD/my_package-1.0.1 find: invalid predicate `' 보통 debuginfo 패키지를 만들려고 하다가 문제가 발생한 경우인데, 제대로 하려면 BuildRoot를 정해야하지만, 굳이 debuginfo가 필요 없다면 spec 파일 맨 위에 아래 구문을 넣어 debuginfo 패키지 생성을 막을 수 있다. %define debug_package %{nil} 참조:  http://stackoverflow.com/questions/1879734/rpm-build-error  

CentOS 5.1에서 cmake Source RPM으로 설치하기

레드햇에서 바이너리와 레드햇의 일부 프로그램을 공개하지 않겠다고 하여, 공개된 소스만 가지고 컴파일하여 RHEL과 비슷하게 만든 것이 CentOS이다. 또한 RHEL은 안정적인 버전만을 공급하다보니 화려한 최신 버전 패키지를 맛보기 힘들다. CentOS 역시 RHEL과 패키지 현황은 비슷하다. 그렇다... CentOS 5.1에 cmake가 없다. Fedora 8 extra던가? 아무튼 그곳에서 나온 패키지 쓰려고 했더니만 glibc를 업그래이드 하라고 해서 포기하고, rpmfind.net 에서 최신 버전 Source RPM을 내려받았다. 일단 설치하고 바이너리 빌드하려고 했는데... $ rpm -UVh cmake-2.4.8-xxxxx.src.rpm $ cd /usr/src/redhat/SPECS $ rpmbuild --target=i686 -bb cmake.spec 목표대상(target) 플랫폼으로 제작 중: i686 i686(을)를 제작하고 있습니다 오류: Failed build dependencies: xmlrpc-c-devel is needed by cmake-2.4.8-xxxxx.i686 칫, 귀찮게 저런 패키지를 요구하다니! 역시나 rpmfind.net 에서 xmlrpc-c 소스 RPM 패키지를 내려 받아 빌드했다. $ rpm -Uvh xmlrpc-c-1.13.8-xxxxx.src.rpm $ cd /usr/src/redhat/SPECS $ rpmbuild --target=i686 -bb xmlrpc-c.spec 목표대상(target) 플랫폼으로 제작 중: i686 i686(을)를 제작하고 있습니다 오류: Failed build dependencies: cmake is needed by xmlrpc-c-1.13.8-xxxxx.i686 뭐야!? 소스 컴파일마저 서로 의존성이 걸려 있는거야!? 나중에 xmlrpc-c쪽 빌드 시스템을 살짝 까봤는데 cmake를 써서 Makefile을 생성하기 때문에 cmake가 반드시 필요하다. ...