CMAKE2.8.10在HP-UNIX上安装异常解决方法

东坡下载 2013年01月09日 08:49:53

      CMAKE2.8.10在HP-UNIX上安装异常解决方法:需要修改文件才能编译通过

      # cd cmake-2.8.10.2/

      # vi Utilities/cmlibarchive/libarchive/archive_write_disk_posix.c

      Locate routine set_time_tru64. Change it so that it looks like:

      #ifdef F_SETTIMES /* Tru64 */

      static int

      set_time_tru64(int fd, int mode, const char *name,

      time_t atime, long atime_nsec,

      time_t mtime, long mtime_nsec,

      time_t ctime, long ctime_nsec)

      {

      struct attr_timbuf tstamp;

      #if defined (__hpux) && defined (__ia64)

      tstamp.atime.tv_sec = atime;

      tstamp.atime.tv_nsec = atime_nsec;

      tstamp.mtime.tv_sec = mtime;

      tstamp.mtime.tv_nsec = mtime_nsec;

      tstamp.ctime.tv_sec = ctime;

      tstamp.ctime.tv_nsec = ctime_nsec;

      #else

      struct timeval times[3];

      times[0].tv_sec = atime;

      times[0].tv_usec = atime_nsec / 1000;

      times[1].tv_sec = mtime;

      times[1].tv_usec = mtime_nsec / 1000;

      times[2].tv_sec = ctime;

      times[2].tv_usec = ctime_nsec / 1000;

      tstamp.atime = times[0];

      tstamp.mtime = times[1];

      tstamp.ctime = times[2];

      #endif

      return (fcntl(fd,F_SETTIMES,&tstamp));

      }

      #endif /* Tru64 */