지금까지 사용한 라이브러리는 설치가 필요합니다. 그래서 그들은 cygwin의 코드에 포함될 수있는 xx.a 파일을 생성합니다. 그러나 Windows 용 NTL 라이브러리는 파일의 압축을 풀면됩니다. 따라서 cygwin 명령 줄에서 사용하는 방법을 알아야합니다. 코드에서 #include를 수행했습니다. 문제는 NTL의 포함 디렉토리에 모든 파일이 ".h"입니다.
내가 한 일은 :
g++ -c Polynomial.cpp -L/cygdrive/c/cygwin/home/Win7/libpaillier -
l:libpaillier.a -L/cygdrive/c/cygwin/home/Win7/Cryptopp -l:libcryptopp.a -
L/cygdrive/c/cygwin/home/Win7/WinNTL-9_2_0/include/NTL -lgmpxx -lgmp
하지만 아래 오류가 발생합니다.
fatal error: NTL/ZZ.h: No such file or directory
#include <NTL/ZZ.h>
^
compilation terminated.
누군가 나에게 단서를 주면 좋을 것입니다. TBC : 이미 GMP를 설치하고 사용하고 있습니다.
헤더 위치에 대한 gcc 경로는 -I
스위치 로 지정됩니다 . 으로 -L
당신은 컴파일 된 라이브러리 위치 (과 디렉토리에 대한 경로를 정의 .a
또는 .so
파일).
또한 전체 경로하는 경우 zz.h
됩니다 /cygdrive/c/cygwin/home/Win7/WinNTL-9_2_0/include/NTL/zz.h
다음 NTL
GCC 인수에 지정된 경로에 포함되어서는 안된다.
따라서 최소한 교체해야합니다.
-L/cygdrive/c/cygwin/home/Win7/WinNTL-9_2_0/include/NTL
와
-I/cygdrive/c/cygwin/home/Win7/WinNTL-9_2_0/include
그리고 아마도 다른 라이브러리의 경우에도 -L
필요한 곳에 컴파일 된 라이브러리 위치에 경로를 추가 할 수 있습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다