使用 swig 包装时避免 "unused typedef" 警告
Avoid "unused typedef" warnings when wrapping with swig
我使用 swig 作为包装器从我的 python 代码中调用 c++ 函数。我的问题是,生成了很多以下类型的警告,因为我包含了 Boost 库的一部分。
/usr/local/include/boost/math/special_functions/bessel.hpp:744:4: warning: unused typedef
'boost_static_assert_typedef_747' [-Wunused-local-typedef]
有没有办法避免这种情况?我想使用
-isystem /usr/local/include
作为标志而不是
-I /usr/local/include
会解决问题。但是我必须在哪里添加它?后一个选项目前在我的 setup.py:
中实现
#!/usr/bin/env python
"""
setup.py file for SWIG spherical_overlap
"""
from distutils.core import setup, Extension
spherical_overlap_module = Extension('_spherical_overlap',
sources=['spherical_overlap_wrap.cxx', 'spherical_overlap.cpp'],
swig_opts=['-c++', '-py3'],
extra_compile_args =['-lboost_system '],
include_dirs = ['/usr/local/include'],
)
setup (name = 'spherical_overlap',
version = '0.1',
author = "SWIG Docs",
description = """Simple swig spherical_overlap from docs""",
ext_modules = [spherical_overlap_module],
py_modules = ["spherical_overlap"],
)
如果您只想避免警告,您可以添加 -Wno-unused-local-typedef
选项
我使用 swig 作为包装器从我的 python 代码中调用 c++ 函数。我的问题是,生成了很多以下类型的警告,因为我包含了 Boost 库的一部分。
/usr/local/include/boost/math/special_functions/bessel.hpp:744:4: warning: unused typedef
'boost_static_assert_typedef_747' [-Wunused-local-typedef]
有没有办法避免这种情况?我想使用
-isystem /usr/local/include
作为标志而不是
-I /usr/local/include
会解决问题。但是我必须在哪里添加它?后一个选项目前在我的 setup.py:
中实现#!/usr/bin/env python
"""
setup.py file for SWIG spherical_overlap
"""
from distutils.core import setup, Extension
spherical_overlap_module = Extension('_spherical_overlap',
sources=['spherical_overlap_wrap.cxx', 'spherical_overlap.cpp'],
swig_opts=['-c++', '-py3'],
extra_compile_args =['-lboost_system '],
include_dirs = ['/usr/local/include'],
)
setup (name = 'spherical_overlap',
version = '0.1',
author = "SWIG Docs",
description = """Simple swig spherical_overlap from docs""",
ext_modules = [spherical_overlap_module],
py_modules = ["spherical_overlap"],
)
如果您只想避免警告,您可以添加 -Wno-unused-local-typedef
选项