0

Visual Studio 2008에서 rrdtool을 컴파일하는 데 문제가 있습니다.rrd을 컴파일하지 못했습니다.

모든 zip 파일을 추가하고 추출했습니다.

rrd.sln을 열고 3 개의 프로젝트 각각에 대해 빌드 솔루션을 시도했습니다. rrdlib, rrdtool 및 rrdupdate하지만이 모든 것에 실패하고 있습니다.

Windows 2003 R2를 사용하고 있는데 다음과 같이 심각한 오류가 발생합니다. .. \ src \ rrd_restore.c (235) : 치명적인 오류 C1189 : #error : "TIME_T를 처리하는 방법을 모릅니다. 이상의 4 또는 8 바이트 " rrd_resize.c

.. \ SRC \ rrd_create.c (15) : 심각한 오류 C1083 : '../rrd_config.h': 해당 파일이나 디렉토리 열 수 없습니다 파일을 포함 pngsize.c

다음 설치 지침은 다음과 같습니다. rrdlib.lib 및 rrdtool.exe 빌드에 대한 단계별 지침은 다음과 같습니다. 버전 1.3.5 이상 Microsoft Visual Studio 2008 (9.0.x).

(1)이 텍스트 파일이있는 디렉토리에 "contrib"이라는 폴더를 만듭니다.

(2) RRDtool의이 폴더에 의존하는 다음 라이브러리를 다운로드 :

- cairo: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/cairo_1.8.10-3_win32.zip 
    and  http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/cairo-dev_1.8.10-3_win32.zip 

- glib:  http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.24/glib_2.24.1-1_win32.zip 
    and  http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.24/glib-dev_2.24.1-1_win32.zip 

- libpng: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/libpng_1.4.0-1_win32.zip 
    and  http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/libpng-dev_1.4.0-1_win32.zip 

- libxml2: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/libxml2_2.7.7-1_win32.zip 
    and  http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/libxml2-dev_2.7.7-1_win32.zip 

- pango: http://ftp.gnome.org/pub/gnome/binaries/win32/pango/1.28/pango_1.28.0-1_win32.zip 
    and  http://ftp.gnome.org/pub/gnome/binaries/win32/pango/1.28/pango-dev_1.28.0-1_win32.zip 

- zlib:  http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/zlib_1.2.4-2_win32.zip 
    and  http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/zlib-dev_1.2.4-2_win32.zip 

- fontconfig: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/fontconfig_2.8.0-2_win32.zip 

- freetype: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/freetype_2.3.12-1_win32.zip 

- expat: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/expat_2.0.1-1_win32.zip 

(3)의 contrib 폴더로 .ZIP 모든 파일의 압축을 풉니 다. 각 라이브러리를 자신의 디렉토리에 추출하지 마십시오. 우리는 모든 파일을 "bin, include, lib ..." 등의 폴더로 구성된 구조로 병합하려고합니다.

(4) 당신의 RRDtool의 폴더의는 Win32 폴더에 비주얼 스튜디오 2008 솔루션 "rrd.sln"를 열고 중 하나에 대한합니다 ( RRDtool의 라이브러리에 대한) 프로젝트 rrdlib, RRDtool의을 (빌드 RRDtool의 실행 라이브러리에 따라 다름) 또는 완전한 솔루션. 빌드 후 이벤트는 실행 파일을 빌드 할 때 .exe 옆에 rrdtool에 필요한 모든 dll을 자동으로 복사합니다 ( ). 이러한 DLL은 rrdtool이 으로 실행되는 모든 호스트에서 사용할 수 있어야합니다.

제안 사항?

답변

1

rrd_config.h 파일이 Win32 용으로 부족하기 때문입니다. Linux에서는 configure 프로세스를 통해 해당 파일을 만들 수 있습니다. 수동으로 소스 코드를 수정하여이 문제를 해결할 수 있습니다. 그냥 rrd_restore.c 코드의 블록을 교체 :

#if SIZEOF_TIME_T == 4 
     temp = strtol((char *)text,NULL, 0); 
#elif SIZEOF_TIME_T == 8 
     temp = strtoll((char *)text,NULL, 0);   
#else 
#error "Don't know how to deal with TIME_T other than 4 or 8 bytes" 
#endif 

과 :

temp = strtoll((char *)text,NULL, 0); 

을하고는 rrd_create.c에 문이 포함 삭제 :

#include "../rrd_config.h" 

그런 건물 였는지를가 완료 될 수 오류 없음.

또 다른 선택으로는 URL을 follow으로 찾아보십시오.

관련 문제