콘텐츠로 바로 가기
STAGING SERVER
DEVELOPMENT SERVER

방법: macOS에서 CMake를 사용하여 pylon 기반 애플리케이션 빌드하기#

문제#

CMake용 pylon 인클루드 디렉터리를 수동으로 설정한 경우, 프로젝트 컴파일 시 다음과 같은 오류 메시지가 발생할 수 있습니다.

/Library/Frameworks/pylon.framework/Headers/PylonIncludes.h:23:10: fatal error: 'Base/GCTypes.h'

해결 방법#

디렉터리를 pylon 에 생성하고 /Library/Frameworks/pylon.framework/Headers 의 모든 헤더 파일을 /Library/Frameworks/pylon.framework/Headers 새 디렉터리로 복사합니다. 예:

cp /Library/Frameworks/pylon.framework/Headers/*.h /Library/Frameworks/pylon.framework/Headers/pylon

그런 다음 다음 템플릿을 사용하여 CMakeLists.txt 파일을 생성합니다. 아래 스크립트는 여기서 다운로드할 수 있는 "Grab.cpp" 코드 샘플을 컴파일합니다.

cmake_minimum_required (VERSION 2.6)
project (Grab)

# The version number.
set (Tutorial_VERSION_MAJOR 1)
set (Tutorial_VERSION_MINOR 0)

set(CMAKE_CXX_STANDARD 11)

#set(PYLON_LIBRARY_DIR "/Library/Frameworks")
#set(PYLONINCLUDEPATH, "${PYLON_LIBRARY_DIR}/pylon.framework/Headers/")

include_directories(/Library/Frameworks/pylon.framework/Headers/ /Library/Frameworks/pylon.framework/Headers/GenICam/)

#set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl, -E")

set(BESLER_LIBRARIES
 pylonbase
 pylonutility
 GenApi_gcc_v3_1_Basler_pylon_v5_1
 GCBase_gcc_v3_1_Basler_pylon_v5_1
)

link_directories(/Library/Frameworks/pylon.framework/Libraries/)

# add the executable
add_executable(Grab Grab.cpp)
target_link_libraries(Grab ${BESLER_LIBRARIES})

런타임 시 pylon 기반 애플리케이션이 pylon 라이브러리를 찾을 수 있도록 다음 환경 변수를 설정합니다.

export DYLD_LIBRARY_PATH="/Library/Frameworks/pylon.framework/Libraries"

테스트 샘플을 빌드하려면:

  1. Grab.cpp와 CMakeLists.txt 파일을 대상 시스템의 원하는 디렉터리로 복사합니다.
  2. build 하위 디렉터리를 생성합니다.
  3. 작업 디렉터리를 build로 변경합니다.
  4. 호출 cmake ...

기술 자료로 돌아가기