@@ -58,10 +58,6 @@ if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID MATCHES "Clang")
58
58
add_compile_options (-Wno-shift-negative-value )
59
59
endif ()
60
60
61
- if (CMAKE_C_COMPILER_ID MATCHES "Clang" AND NOT APPLE AND NOT CMAKE_C_SIMULATE_ID MATCHES "MSVC" )
62
- add_link_options ("-Wl,-z,relro,-z,now,-z,defs" )
63
- endif ()
64
-
65
61
if (CMAKE_C_COMPILER_ID MATCHES "Clang" AND CMAKE_C_SIMULATE_ID MATCHES "MSVC" )
66
62
# error: 'strdup' is deprecated: The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _strdup.
67
63
# "strdup" is standard since C23
@@ -78,6 +74,10 @@ file(GLOB TAG_FILES ${CMAKE_CURRENT_SOURCE_DIR}/tag*.c)
78
74
add_library (${PROJECT_NAME} ${APRILTAG_SRCS} ${COMMON_SRC} ${TAG_FILES} )
79
75
set_property (TARGET ${PROJECT_NAME} PROPERTY POSITION_INDEPENDENT_CODE ON )
80
76
77
+ if (CMAKE_C_COMPILER_ID MATCHES "Clang" AND NOT APPLE AND NOT CMAKE_C_SIMULATE_ID MATCHES "MSVC" )
78
+ target_link_options (${PROJECT_NAME} PRIVATE "-Wl,-z,relro,-z,now,-z,defs" )
79
+ endif ()
80
+
81
81
if (MSVC )
82
82
add_compile_definitions ("_CRT_SECURE_NO_WARNINGS" )
83
83
else ()
@@ -183,7 +183,9 @@ if(BUILD_PYTHON_WRAPPER AND Python3_Development_FOUND AND Python3_NumPy_FOUND)
183
183
set (apriltag_py_target "apriltag.${Python3_SOABI} " )
184
184
Python3_add_library(${apriltag_py_target} MODULE ${CMAKE_CURRENT_SOURCE_DIR} /apriltag_pywrap.c)
185
185
add_dependencies (${apriltag_py_target} apriltag_py_docstrings)
186
- target_link_libraries (${apriltag_py_target} PRIVATE apriltag Python3::Python Python3::NumPy)
186
+ # avoid linking against Python3::Python to prevent segmentation faults in Conda environments
187
+ # https://github.com/AprilRobotics/apriltag/issues/352
188
+ target_link_libraries (${apriltag_py_target} PRIVATE apriltag Python3::NumPy)
187
189
target_include_directories (${apriltag_py_target} PRIVATE ${PROJECT_BINARY_DIR} )
188
190
189
191
set (PY_DEST ${CMAKE_INSTALL_PREFIX} /lib/python${Python3_VERSION_MAJOR} .${Python3_VERSION_MINOR} /site-packages/)
0 commit comments