[OpenAFS-devel] Problems compiling openafs-1.2(3,4) on Solaris
9 release from Sun
Quanah Gibson-Mount
quanah@stanford.edu
Mon, 10 Jun 2002 10:29:20 -0700
--On Saturday, June 08, 2002 2:10 PM -0400 Derrick J Brashear
<shadow@dementia.org> wrote:
> On Sat, 8 Jun 2002, Quanah Gibson-Mount wrote:
>
>> Hello,
>>
>> I've built a Solaris 9 machine and downloaded the source for
>> openafs-1.2.3 and openafs-1.2.4, as the precompiled binaries do not
>> work with the release shipped by Sun. I installed forte 6u2 and have
>> attempted compiling both
>
> They were built against a prerelease, which at the time OpenAFS 1.2.4 was
> released, was all that was available.
>
>> sources. However, they both fail at the same spot, trying to compile
>> afs_callback.c in MODLOAD32 (or MODLOAD64, if I tweak the makefile to
>> skip the 32 bit one). I ran configure --with-afs-sysname=sun4x_59
>> --enable-transarc-paths.
>
>> "../afs/afs_callback.c", line 696: undefined symbol: hrestime
>> "../afs/afs_callback.c", line 696: warning: left operand of "." must be
>> struct/union object
>
> It's a call to osi_Time, which is a macro:
># define osi_Time() (hrestime.tv_sec)
>
> I don't have a Solaris 9 machine (release or otherwise) so there's nothing
> I can tell you.
Derrick,
I've found the problem, here is a solution from SunSolve.
Basically, hrestime is no longer availabe in Solaris 9.
--Quanah
------- muxq_impl.cc -------
67a68
> timespec_t start;
74c75,76
< start_time = hrestime.tv_sec;
---
> gethrestime(&start);
> start_time = start.tv_sec;
898c900,902
< time_t current_time = hrestime.tv_sec;
---
> timespec_t current;
> gethrestime(¤t);
> time_t current_time = current.tv_sec;