OpenMathLib / OpenMathLib/OpenBLAS
SYMBOLSUFFIX have no effect when building static library
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 7.6k
- Forks
- 1.7k
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 42
Description
It seems that SYMBOLSUFFIX only works with BUILD_SHARED_LIBS=ON, at least from what I understood from reading CMakeLists. To confirm this, I compiled openblas using the options below
%CMAKE_COMMAND% ^
-G "Ninja" ^
-D CMAKE_BUILD_TYPE:STRING="Release" ^
-D CMAKE_INSTALL_PREFIX="%LAPACK_DIR%" ^
-D CMAKE_C_COMPILER="cl.exe" ^
-D CMAKE_CXX_COMPILER="cl.exe" ^
-D CMAKE_Fortran_COMPILER="ifx.exe" ^
-D CMAKE_Fortran_FLAGS="" ^
-D SYMBOLSUFFIX="_" ^
-D CMAKE_VERBOSE_MAKEFILE:BOOL=OFF ^
-D BUILD_SHARED_LIBS:BOOL=OFF ^
-D BUILD_STATIC_LIBS:BOOL=ON ^
-D BUILD_WITHOUT_CBLAS:BOOL=ON ^
-D BUILD_WITHOUT_LAPACKE:BOOL=ON ^
-D BUILD_LAPACK_DEPRECATED:BOOL=ON ^
-D BUILD_TESTING:BOOL=OFF ^
%LAPACK_HOME%
And extracting the symbol:
dumpbin /SYMBOLS openblas.lib | findstr /i "dgemm"
02C 00000000 UNDEF notype External | dgemm
.....
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the CMakeLists references to SYMBOLSUFFIX and the static-library configuration. Rebuild with the reported Ninja options, then inspect openblas.lib with dumpbin /SYMBOLS; done means the requested suffix is reflected when BUILD_SHARED_LIBS=OFF and BUILD_STATIC_LIBS=ON.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, cmake, fortran
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100