2012-05-21 2 views
0

서버에서 실행중인 OpenCV를 사용하는 C++ 응용 프로그램을 만들고 싶습니다. 이렇게하려면 내 서버에서 C++ 응용 프로그램을 컴파일해야합니다. 하지만 OpenCV 라이브러리 (및 기타 라이브러리)를 서버에서 어떻게 구할 수 있습니까? 아니면 내 C++ 응용 프로그램을 내 서버에서 실행하는 또 다른 방법이 있습니까? 즉 서버가 아닌 내 컴퓨터에서 컴파일하는 것입니다.서버에서 OpenCV/C++ 응용 프로그램 컴파일

나를 도울 수 있기를 바랍니다. 감사!

답변

0

서버가 동일한 아키텍처 (예 : Intel x86 32 비트 또는 PowerPC 모두) 인 경우 자체 상자에서 컴파일하고 서버에서 실행할 수 있어야합니다.

아래의 jlengrand에서 언급했듯이 모든 대상 아키텍처에 대해 크로스 컴파일러를 사용하여 컴퓨터를 설정할 수도 있습니다. 기본적으로 한 줄짜리 명령을 입력하여 컴파일 환경을 설정 한 다음 g ++ 또는 사용중인 모든 것을 호출하면 크로스 컴파일러가 만들어지는 아키텍처에 맞게 빌드됩니다.

내가 OpenCV의에 대해 잘 모르겠지만, 오랫동안 당신이 "정적을 연결"로 설정 가지고있는 라이브러리는 다음 그들은 당신의 결과 실행의 일부가되어야합니다. 따라서 실행 파일에는 모든 라이브러리가 있으며 컴퓨터 아키텍처가있는 모든 컴퓨터에서 실행 가능합니다. 그 자체가 당신이 그들이의 일부가 아닙니다 실행하지만 (동적 링크 공유 의미 라이브러리를 실행하면 서버에 현재와 위치 추적해야했다 라이브러리를 의미하는 것처럼

을 연결하는 동적 조심 실행 가능하고 별도로 제공해야합니다. 동적 링크는 상황을 공유하고 업데이트 할 때 실제로 더 좋지만 배포가 더 복잡합니다.

+2

또한 컴퓨터에서 컴파일하고 서버에서 실행되도록 투표했습니다. 전용 컴파일러를 사용하여 다른 아키텍처로 컴파일 할 수도 있습니다. 과거에는 ARM 플랫폼에서이 작업을 수행했습니다. 당신은 간단하게 서버에 파일을 복사해야합니다, 매력처럼 작동합니다 :) – jlengrand

+0

그건 좋은 지적입니다. 언제나 임베디드 시스템으로 작업 할 때 사람들은 무엇이든 컴파일 할 수 있습니다. –

+0

답변 해 주셔서 감사합니다! 이것은 내가 염두에 두었던 것보다 훨씬 더 실현 가능합니다. – Rogier

관련 문제