2016-06-14 7 views
0

windows 10 시스템에서 openBLAS (0.2.18 from here)를 컴파일하려고합니다. mingw, msys (perl, gfortran 등), mingw-w64 (기본적으로 절차 here에 따라)를 설치했습니다.인식 할 수없는 명령 행 옵션 '--exclude-libs = libpthread.a'openblas mingw-w64

것 같다

gcc.exe: error: unrecognized command line option '--exclude-libs=libpthread.a'

'='승인되지를 사용하는 것을 "라이브러리 이름은 쉼표 나 콜론으로 구분 할 수있다"

잘 컴파일로, 나는 다음과 같은 오류가 발생합니다 실행합니다. 그래서 나는 소스 디렉토리에서 "exclude", "libpthread"를 검색하고 행운없이 다양한 makefile을 조사하는 방법을 포함하여이 명령 행 옵션이 어떻게/어디에서 지정되고 있는지를 파악하려고 시도하고 있습니다.

올바른 구문이없는 명령 줄 옵션에 대해 올바 릅니까? 어떤 사람이 지정되어 있는지 추적하거나 make가 그러한 명령 행 옵션을 생성 할 수있는 방법에 대한 참조를 얻는 방법에 대한 아이디어가 있습니까?

gcc -O2 -DMS_ABI -DMAX_STACK_ALLOC=2048 -Wall -m64 -DF_INTERFACE_GFORT -DSMP_SERVER -DNO_WARMUP -DMAX_CPU_NUMBER=8 -DASMNAME= -DASMFNAME=_ -DNAME=_ -DCNAME= -DCHAR_NAME=\"_\" -DCHAR_CNAME=\"\" -DNO_AFFINITY -I.. libopenblas.def dllinit.obj \ 
     -shared -o ../libopenblas.dll -Wl,--out-implib,../libopenblas.dll.a \ 
     -Wl,--whole-archive ../libopenblas_haswellp-r0.2.18.a -Wl,--no-whole-archive -Lc:/mingw/64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0 -Lc:/mingw/64/bin/../lib/gcc -Lc:/mingw/64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/lib/../lib -Lc:/mingw/64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../lib -Lc:/mingw/64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/lib -Lc:/mingw/64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../.. -lgfortran -lmingw32 -lmoldname -lmingwex -lmsvcrt -lquadmath -lm -lmingw32 -lmoldname -lmingwex -lmsvcrt -lpthread -lmingw32 -lmoldname -lmingwex -lmsvcrt --exclude-libs=libpthread.a -defaultlib:advapi32 -lgfortran -defaultlib:advapi32 -lgfortran 

와 메이크업이 /c/tcm/xianyi-OpenBLAS-3f6398a/exports

답변

0

--exclude-libs 링커, ld위한 옵션입니다 디렉토리를 입력 한 후 발생합니다

는 참고로 전체 명령입니다. 컴파일러에 전달하고 있습니다. 는 -Wl로 접두사, 링커를 통해 옵션을 통과 gcc에게 즉 당신이 모든 다른 링커 옵션이 통과되어 함께했던 것처럼

-Wl,--exclude-libs=libpthread.a 

.