Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix cmake build with -Denable_internal_blaslib=YES. #74

Closed
wants to merge 4 commits into from
Closed

Fix cmake build with -Denable_internal_blaslib=YES. #74

wants to merge 4 commits into from

Conversation

IslamOmar-360Imaging
Copy link

@IslamOmar-360Imaging IslamOmar-360Imaging commented Feb 20, 2023

MSCV errors on unresolved shared library symbols. This can be seen with gcc by adding target_link_options(blas PRIVATE "-lm" "-Wl,--no-undefined" "-Wl,--no-allow-shlib-undefined") after add_library(blas ${sources}).

You may use that or copy these files inside CBLAS directory.

related #71.

@xiaoyeli
Copy link
Owner

Why does CBLAS/ need input_error.c ? This file is provided in SRC/, and CBLAS/ is not meant to be used separately from the library compiled in SRC/.
On linux system, having a file in 2 libraries: llibsuperlu.a and libcblas.a may cause error of multiple definition.

@IslamOmar-360Imaging
Copy link
Author

See the issue with gcc target_link_options(blas PRIVATE "-lm" "-Wl,--no-undefined" "-Wl,--no-allow-shlib-undefined").

When building cblas as a separate library, MSCV resolves the symbols directly(Idk if there is an option to delay that) and gives these errors.

@IslamOmar-360Imaging
Copy link
Author

What about appending CBLAS sources to superlu when CBLAS isn't found instead of build it separately?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants