You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
boost/1.69.0: WARN: Boost component 'filesystem' is missing libraries. Try building boost with '-o boost:without_filesystem'. (Option is not guaranteed to exist)
boost/1.69.0: WARN: Boost component 'system' is missing libraries. Try building boost with '-o boost:without_system'. (Option is not guaranteed to exist)
ERROR: boost/1.69.0: Error in package_info() method, line 1492
raise Conan Exception("These libraries were build, but were not used in any boost module: {}".format(non_used))
ConanException: These libraries were built, but were not used in any boost module: {'boost_system.dll', 'boost_filesystem.dll'}
The thing is MinGW when building shared libs outputs two files: xxx.dll (placed in package/{id}/bin) and xxx.dll.a (placed in package/{id}/lib), then tools.collect_libs(self) reports what it finds in the lib folder (without lib prefix and .a suffix): {'boost_system.dll', 'boost_filesystem.dll'} instead of reporting {'boost_system', 'boost_filesystem'} and the packaging fails while everything was alright.
boost conanfile.py:
all_detected_libraries=set(tools.collect_libs(self))
# prints {'boost_system.dll', 'boost_filesystem.dll'} if shared=True
...
module_libraries=filter_transform_module_libraries(self._dependencies["libs"][module])
# prints {'boost_system', 'boost_filesystem'}all_expected_libraries=all_expected_libraries.union(module_libraries)
ifset(module_libraries).difference(all_detected_libraries): # here is the problemincomplete_components.append(module)
The text was updated successfully, but these errors were encountered:
Package and Environment Details
Conan profile
Steps to reproduce
conanfile.txt
Logs
The thing is MinGW when building shared libs outputs two files:
xxx.dll
(placed inpackage/{id}/bin
) andxxx.dll.a
(placed inpackage/{id}/lib
), thentools.collect_libs(self)
reports what it finds in thelib
folder (without lib prefix and .a suffix):{'boost_system.dll', 'boost_filesystem.dll'}
instead of reporting{'boost_system', 'boost_filesystem'}
and the packaging fails while everything was alright.boost conanfile.py:
The text was updated successfully, but these errors were encountered: