2017-03-10 2 views
0

Conan을 사용하여 버전 관리를 위해 파일 및 실행 파일을 패키지로 묶으려고합니다. 그러나 Conan 문서를 살펴본 후에도이를 수행하는 방법이 여전히 불분명하고 Conan이 올바른 도구 일지라도 그 일 때문에.Conan 패키지를 만들 때 문제가 발생했습니다.

기본적으로 3 개의 .dll 파일, 구성 파일 및 2 개의 실행 파일 (OpenSSL 및 위에서 언급 한 모든 종속성이 필요한 .exe)을 패키지로 만듭니다. 내가 포장하고 싶은 모든 것은 데스크탑에 로컬로 존재합니다. 코난에서 경험 한 사람이 올바른 방향으로 나를 가리킬 수 있다면 많은 도움이 될 것입니다. 감사!!

답변

1

일반적으로 버전 관리에서는 바이너리, 라이브러리 및 실행 파일을 검사하지 않지만 파일 서버와 같은 다른 곳에서는이를 호스트하지 않습니다. conan을 사용하는 경우 공용 패키지에 기존 conan.io 무료 서비스를, 사설 패키지 또는 Artifactory를 사내 구축 환경에 호스팅하기 위해 OSS conan_server를 사용할 수 있습니다.

def build(self): 
    shutil.copytree("C:/Path/to/folder/with/files", ".") 

def package(self): 
    # make sure files are now copied into the package 
    self.copy("*.lib", dst="lib", src="files") 
    self.copy("*.dll", dst="bin", src="files") 
    self.copy("*.conf", dst="", src="files") 

이 패키지를 바로 제공하는 경우 :

당신의 유물이 알려진 폴더, 바탕 화면에 바로 사는 경우, 당신이해야 할 모든 패키지 조리법에 다음 build() 방법 같은 것을 구현입니다 하나 개의 주어진 구성,이 패키지의 configure() 명확하게 출력 잠재적 인 소비자의 호환성에 체크를 추가 :

class MyRecipe(ConanFile): 
    settings = "os", "compiler", "arch", "build_type" 

    def configure(self): 
     if self.settings.os != "Windows" or self.settings.arch != "x86_64" or \ 
      self.settings.build_type != "Release" or ... : 
      raise Exception("This package does not support this configuration") 
+0

감사 drodri,이 일이 명확합니다. – Stefan

관련 문제