2017-10-27 11 views
0

장면 :FreeBSD synth - 빌드 llvm 충돌 - synth 공식 패키지를 사용하도록 강요합니까?

내가 :

  • FreeBSD의 분기 별 설정 11.1
  • 신디 패키지 빌더
  • PKG의 환매 특약이 꺼 사실

문제로 설정

  • 패키지 빌드 신스로 vips (그래픽 도구)를 만들려고 노력하고 있습니다. vips의 의존성 중 하나는 LLVM입니다. 어떤 이유로 LLVM (llvm40)은 공식적인 분기 별 저장소에서 가져 오지 않지만 다른 패키지는 변경되지 않습니다.

    신선한 llvm40 빌드를 가지고 있어도 상관 없지만 llvm40 빌드는 항상 약 1 시간 정도 컴파일 된 후에 항상 중단됩니다.

    그래서이 문제로 하루 종일 붙어있어, 나는 공식적으로 repo에서 버전을 사용하도록 synth를 강요 할 수 있어야한다.

    아무데도 언급하지 않은 옵션이 있지만 어쩌면 솜에 비슷한 문제가 발생하여 해결 방법이나 해결 방법을 알고 있습니다.

  • +0

    ''pkg install vips '을 사용해 보셨습니까? 미리 컴파일 된 버전을 다운로드/설치해야합니다. – nbari

    +0

    @nbari 필자가 작성한 것처럼, 나는 synth 즉 사용자 정의 저장소로 구축하고 있습니다. 따라서 공식 repo에서 설치 한 pkg는 옵션이 아닙니다. – LongHike

    답변

    0

    나는 내 문제에 대한 해결책을 게시하는 것에 대해 사과하지만, 이제는 llvm40을 빌드하기 위해 synth를 얻었습니다.

    1 단계 : gcc6을 먼저 작성하십시오. 어떻게 든 gcc6은 스왑 공간을 많이 차지하는 LLVM과 함께 구축됩니다.

    2 단계 : 디버거를 사용하지 않고 llvm40이지만 을 빌드하십시오.. 그래서 make config를 실행하고 llbd를 비활성화하십시오.

    그런 다음 스왑 공간 문제가 발생하지 않습니다.

    0

    소스에서 컴파일하려면 내가 예를 들어 portmaster

    사용하는 것이 좋습니다 것입니다,이

    먼저, 설치 포트 graphics/vips (기본 옵션)에서 설치하는 나는 빈 감옥에서 한 단계가/업데이트 포트 :

    # portsnatp fetch extract 
    

    다음, portmaster 설치 :

    # cd /usr/ports/ports-mgmt/portmaster 
    # make install clean 
    

    이미 포트가있는 경우?를 사용하여 패키지를 설치하기 전에 업데이트 할 수 있습니다. vips 설치를위한

    # portsnap fetch update 
    

    :

    는 는 버전 난 컴파일 그것은 LLVM에 있지만 마지막에 관련된 사람을 포함하여 많은 옵션에 대해 묻는 메시지가 표시됩니다

    , 그것은 포트를 컴파일해야

    # cd /usr/ports 
    # portmaster graphics/vips 
    
    , 예를 들어,이된다 : 경우

    [email protected]:/usr/ports # vips --vips-version 
    libvips 8.4.5-Sat Oct 28 09:19:20 UTC 2017 
    

    나중에는 Y을 모든 포트를 업데이트하고 여러 번 눌러지지 않도록하고 싶습니다 그래서 나중에 아마 당신은 단지 포함하는 사용자 정의 패치/포트를 사용할 수 있습니다, 이것은 단지 vips를 설치하지만 시스템의 모든 종속성을 넣어 것입니다

    # yes | portmaster -da 
    

    (llvm-* 등) : (예), 당신이 뭔가를 할 수 귀하의 사용자 정의 종속성, 아마도 synth (나는 정확히 무엇인지 모르겠다)하지만 적어도 이것은 당신이 성공적으로 vips을 컴파일하는 데 도움이되기를 바랍니다.