2012-08-14 2 views
0

오프라인 g ++ - 4.4 패키지를 설치하려고하면 libstdC++ 6-4.4-dev에 의존성이 생깁니다. libstdC++ 6-4.4-dev를 설치하려고하면 g ++에 대한 의존성 - 4.4.g ++ 10.04에 설치하기 lucid 오프라인 종속성을 부여합니다

[email protected]:~/Download/g++$ sudo dpkg -i g++-4.4_4.4.3-4ubuntu5.1_amd64.deb 
    (Reading database ... 45040 files and directories currently installed.) 
    Preparing to replace g++-4.4 4.4.3-4ubuntu5.1 (using g++-4.4_4.4.3-4ubuntu5.1_amd64.deb) ... 
    Unpacking replacement g++-4.4 ... 
    dpkg: dependency problems prevent configuration of g++-4.4: 
    g++-4.4 depends on libstdc++6-4.4-dev (= 4.4.3-4ubuntu5.1); however: 
     Package libstdc++6-4.4-dev is not configured yet. 
    dpkg: error processing g++-4.4 (--install): 
    dependency problems - leaving unconfigured 
    Processing triggers for man-db ... 
    Errors were encountered while processing: 
    g++-4.4 
    [email protected]:~/Download/g++$ sudo dpkg -i libstdc++6-4.4-dev_4.4.3-4ubuntu5.1_amd64.deb 
    (Reading database ... 45040 files and directories currently installed.) 
    Preparing to replace libstdc++6-4.4-dev 4.4.3-4ubuntu5.1 (using libstdc++6-4.4-dev_4.4.3-4ubuntu5.1_amd64.deb) ... 
    Unpacking replacement libstdc++6-4.4-dev ... 
    dpkg: dependency problems prevent configuration of libstdc++6-4.4-dev: 
    libstdc++6-4.4-dev depends on g++-4.4 (= 4.4.3-4ubuntu5.1); however: 
     Package g++-4.4 is not configured yet. 
    dpkg: error processing libstdc++6-4.4-dev (--install): 
    dependency problems - leaving unconfigured 
    Errors were encountered while processing: 
    libstdc++6-4.4-dev 

답변

1

동시에를 설치하십시오 :이 경우에 일하게 될 수도

sudo dpkg -i ./*.deb 
+0

. 에는 오류가 표시되지 않습니다. 하지만'$ g ++ -v'를 통해 g ++ 버전을 얻으려고하면 아무 것도 보여주지 않습니다. 여기에 : – vikash

+0

'ocpe @ blrkec241972d : ~/Download/g ++ $ sudo dpkg -i ./*.deb (데이터베이스를 읽는 중 ... 45040 개의 파일과 디렉토리가 현재 설치되어 있습니다.) g ++ - 4.4 대체 준비 4.4. 3-4ubuntu5.1 (using .../g ++ - 4.4_4.4.3-4ubuntu5.1_amd64.deb) ... 풀기 대체 g ++ - 4.4 ... libstdC++ 6 4.4.3-4ubuntu5 대체 준비. 1 (using .../libstdC++ 6_4.4.3-4ubuntu5.1_amd64.deb) ... 대체품 풀기 libstdC++ 6 ... libstdC++ 대체 준비 6-4.4-dev 4.4.3-4ubuntu5 .1 (using .../libstdC++ 6-4.4-dev_4.4.3-4ubuntu5.1_amd64.deb) 대체 패키지 풀기 libstdC++ 6-4.4-dev libstdC++ 6 (4.4.3-4ubuntu5. 1)' – vikash

+0

'g ++ - 4.4 (4.4.3-4ubuntu5.1) 설정 중 ... man-db 용 트리거 처리 중 ... libstdC++ 설정하기 6-4.4-dev (4.4.3-4ubuntu5.1) ... ocpe @ blrkec241972d : ~/다운로드/g ++ $ g ++ -v 이 프로그램은 'g ++'다음 패키지에서 찾을 수 있습니다 * g ++ ' – vikash

0

을하지만 최근 리눅스 민트 (13) 제안 된 명령이 (가) 같은 문제로 실행 (sudo는 때 dpkg -i ./ .deb)는 일시적으로 그러한 패키지를 설치하지만, 여전히 "broken"(즉, 충돌을 해결할 때까지 패키지를 사용하거나 수정하지 못하게 함)로 등록됩니다. 이러한 문제를 해결할 수있는 유일한 방법은 패키지 관리자를 사용하는 것입니다. 현재 다른 방법은 없습니다.

재미있는 점은 이더넷 어댑터의 결함있는 드라이버를 작동중인 것으로 교체하려고 할 때 이러한 넌센스가 있음을 발견했습니다. 대부분의 Linux 배포판에는 개발 도구가 포함되어 있지 않습니다 (따라서 오프라인 모드에서 "설치"만 할 수는 없습니다). 그러나 개발자 정책 [원형 의존성, 자기 의존성, 이러한 경우에는 작동하지 않는 dpkg] 때문에 패키지를 오프라인으로 설치할 수있는 방법이 없으므로 일부 Linux 버전은 특정 플랫폼에서 영구적으로 손상 될 수 있습니다 (인터넷 연결이 작동하지 않는 경우).

제안 사항? 프로그래머의 엄격한 의존성 정책을 요구하기 위해 개발자 포럼에 스팸을 제안 할 것입니다 : 자동 의존성 검사가 실행되기 전에 모듈을 공개해서는 안됩니다 (자기 의존성을 피하기 위해 절름발이입니다). 순환 종속성의 경우 (즉, b는 b에 의존하고, b는 c에 의존하고, c는 a에 의존합니다) 모듈은 릴리스 전에 단일 모듈에 병합되어야합니다. 파일이 얼마나 커질 지 중요하지 않습니다. 모듈화 된 것으로 보이는 시스템보다 더 나쁜 것은 없지만 실제로 모듈은 그들이 해결할 수있는 것보다 더 많은 문제를 만들고 있습니다. 이 경우에는 모듈화되지 않은 "블록"정책이 반드시 있어야합니다.

복잡한 있습니다에서 세계 ... 사람 만이 만들 그것은 훨씬 더 복잡 ...

관련 문제