Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

SYMBOLSUFFIX have no effect when building static library

Aberta
#6,028 1 comentário 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
68/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Ativa
Stack de tecnologia
c, cmake, fortran
Domínio
build-system

Direção de pesquisa

Comece lendo as referências de CMakeLists a SYMBOLSUFFIX e à configuração da biblioteca estática. Recompile com as opções do Ninja informadas e, em seguida, inspecione openblas.lib com dumpbin /SYMBOLS; considera-se concluído quando o sufixo solicitado for refletido com BUILD_SHARED_LIBS=OFF e BUILD_STATIC_LIBS=ON.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

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
.....

Linguagem predominante
C
Estrelas
7.6k
Forks
1.7k
Merge médio
1d 9h
PRs com merge (30d)
44

Preparar o ambiente

Ainda não verificamos os arquivos de configuração deste projeto. Comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de OpenMathLib/OpenBLAS

Todas as issues de OpenMathLib/OpenBLAS

Issues semelhantes

Mais issues de C

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.