Return-Path: Delivered-To: apmail-incubator-harmony-dev-archive@www.apache.org Received: (qmail 95567 invoked from network); 21 Oct 2005 03:13:16 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 21 Oct 2005 03:13:15 -0000 Received: (qmail 48317 invoked by uid 500); 21 Oct 2005 03:13:14 -0000 Delivered-To: apmail-incubator-harmony-dev-archive@incubator.apache.org Received: (qmail 47476 invoked by uid 500); 21 Oct 2005 03:13:11 -0000 Mailing-List: contact harmony-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: harmony-dev@incubator.apache.org Delivered-To: mailing list harmony-dev@incubator.apache.org Received: (qmail 47465 invoked by uid 99); 21 Oct 2005 03:13:11 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 20 Oct 2005 20:13:11 -0700 X-ASF-Spam-Status: No, hits=0.5 required=10.0 tests=DNS_FROM_RFC_ABUSE X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: local policy) Received: from [207.69.195.66] (HELO pop-canoe.atl.sa.earthlink.net) (207.69.195.66) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 20 Oct 2005 20:13:09 -0700 Received: from elwamui-norfolk.atl.sa.earthlink.net ([209.86.224.43]) by pop-canoe.atl.sa.earthlink.net with esmtp (Exim 3.36 #10) id 1ESnKq-0005y0-00 for harmony-dev@incubator.apache.org; Thu, 20 Oct 2005 23:12:48 -0400 Message-ID: <29204167.1129864368796.JavaMail.root@elwamui-norfolk.atl.sa.earthlink.net> Date: Thu, 20 Oct 2005 22:12:48 -0500 (GMT-05:00) From: Apache Harmony Bootstrap JVM Reply-To: Apache Harmony Bootstrap JVM To: harmony-dev@incubator.apache.org Subject: Re: Build problem on Linux Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: EarthLink Zoo Mail 1.0 X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Robin, Hmmm... This looks like a POSIX versus Solaris GCC issue. Keep in mind that I developed this on Solaris 9, but with POSIX compliance in mind where possible. I figured that if and when we came upon such issues as these, we would solve them when we got there. I guess we are there now ;-) Perhaps there is a Linux equivalent to the interval timer below, or, better yet, a generic POSIX equivalent. I would like to use POSIX facilities whereever possible to maximize portability. Maybe we'll have to support explicitly Solaris and Linux, but who knows yet? We're just getting started. FYI-- This part of the code is _sure_ to contain the most exposure to such issues due to the OS facilities it invokes. This will be true for _all_ platforms to which this code is ported. Concerning build utilities, each directory under 'bootJVM' itself has an Eclipse project file for use with Eclipse and its C/C++ module. See 'config.sh' and 'README' for more info here. Do we need to add '.' to the include path? This should be a simple change and benign, even if on some platforms it is redundant. Perhaps some versions/platforms for GCC need it and some don't. But if it is added, it will solve the problem for all platforms. I am an avid fan of 'gmake', and always like to recommend it since I have built _exceedingly_ complex projects with it (like numerous languages, custom toolkits, specialized application scripts, multiple platforms for part/all code, etc.). If you are interested in this, I would be _glad_ for you to do some work with this "real build tool", as you rightly call it.. 8-) (Please let me know so we can strategize to make it complete yet simple.) Dan Lydick -----Original Message----- From: Robin Garner Sent: Oct 20, 2005 5:20 PM To: harmony-dev@incubator.apache.org Subject: Build problem on Linux I'm having problems building the boot JVM. running jvm/build.sh I get src/timeslice.c:82:71: thread.h: No such file or directory src/timeslice.c: In function `timeslice_tick': src/timeslice.c:221: error: invalid use of undefined type `struct itimerval' src/timeslice.c: In function `timeslice_run': src/timeslice.c:260: error: invalid use of undefined type `struct itimerval' src/timeslice.c:262: error: invalid use of undefined type `struct itimerval' src/timeslice.c:264: error: invalid use of undefined type `struct itimerval' src/timeslice.c:266: error: invalid use of undefined type `struct itimerval' src/timeslice.c:279: warning: implicit declaration of function `setitimer' src/timeslice.c:279: error: `ITIMER_REAL' undeclared (first use in this function) src/timeslice.c:279: error: (Each undeclared identifier is reported only once src/timeslice.c:279: error: for each function it appears in.) src/timeslice.c:311: warning: implicit declaration of function `yield' src/timeslice.c: At top level: src/timeslice.c:178: error: storage size of `timeslice_period' isn't known gcc: bin/timeslice.o: No such file or directory Is this a header file missing ? I'm running gentoo with a 2.6.13 kernel and gcc 3.3. By the way, the top level config.sh/build.sh seems to expect that "." is in the path. And any chance of getting this to build using a real build tool ? Make ? Ant ? (or is ant only for java ?) cheers Dan Lydick