Building LibVNCServer-0.6 for m68k-rtems
Joel Sherrill <joel@OARcorp.com>
joel.sherrill at OARcorp.com
Wed Aug 18 17:08:40 UTC 2004
Mark Mussetter wrote:
> Thank you for the explanation. It's making more sense to me now.
But what doesn't make sense to me is why you want to build the
VNCServer for RTEMS. What is it going to serve?
--joel
>
>
> At 12:01 AM 8/18/2004, you wrote:
>
>> On Tue, 2004-08-17 at 19:10, Mark Mussetter wrote:
>> > I have some questions about building LibVNCServer-0.6 for RTEMS.
>> I'm not
>> > very experienced with makefiles or configure so these questions
>> might be
>> > pretty basic.
>> >
>> > Our system:
>> > target = Motorola Coldfire 5272
>> > host = Cygwin (running on a Windows XP machine)
>> >
>> > My questions are in regards to the --host, --target, and --build
>> options to
>> > configure.
>> >
>> > I would assume that to get LibVNCServer to build a library that I could
>> > link in to my RTEMS application, I would need to specify
>> > --target=m68k-rtems.
>>
>> --host=m68k-rtems
>>
>> > However, when I do this, configure finds and invokes
>> > the standard gcc compiler from my usr/bin directory in the Cygwin tree.
>> Make sure to have the path to your compiler in $PATH (e.g.
>> PATH=/opt/rtems/bin:$PATH)
>> and try
>>
>> configure --host=m68k-rtems
>>
>> > I have tried all of the combinations of --build, --host, and --target
>> > options and it seems that the only way I can get configure to find
>> and use
>> > the m68k-rtems compiler to build LibVNCServer is if I specify
>> > "--host=m68k-rtems" on the command line to ./configure.
>> Right.
>>
>> > It doesn't seem right to me to specify the --host variable.
>> No, this is correct.
>>
>> --build ... system you are building on (Normally, automatically guessed,
>> rarely needed to be specified manually.); e.g. i686-pc-linux-gnu or
>> i686-pc-cygwin.
>> --host ... system you are building binaries for (the system they are
>> supposed to run on), here: m68k-rtems
>> --target ... system the binaries to build are supposed to generate code
>> for (Normally only required by cross-tools).
>>
>> I.e. configure --build=i686-pc-linux-gnu \
>> --host=i686-pc-cygwin --target=m68-rtems
>> is supposed to configure a package for building on i686-pc-linux-gnu,
>> generate binaries to run on i686-pc-cygwin, which produce output for
>> m68-rtems
>>
>> [Cross building a cygwin->m68-rtems tool-package on linux]
>>
>>
>> What might confuse you is binutils, gdb, GCC and RTEMS using a sightly
>> different convention for their top level configure scripts and the
>> general recommendation to use "--target=..." for cross-compilation.
>>
>> Somewhat oversimplifying, this is mostly a historical relic only being
>> used in toplevel configure scripts of complex packages and a side-effect
>> of complex defaulting rules being applied to --build, --host, --target.
>>
>> > Can anyone tell me how I need to set the --host, --build, and
>> --target options?
>> In general, you need to examine how a package processes them.
>>
>> In case of simple packages, using one autoconf-2.5x generated configure
>> script (such as LibVNCserver), it is always --host.
>>
>> In case of complex packages (Several subpackages, several configure
>> scripts) things can be different.
>> However, internally, autoconf-2.5x-based configure scripts of
>> subpackages apply the autoconf-2.5x canonicalization rules.
>> E.g. RTEMS consists of several subpackages, all of them apply
>> autoconf-2.5x and all of them internally apply "--host=..."
>>
>> Ralf
>
>
> Mark Mussetter
> Link Communications, Inc.
> 1035 Cerise Rd
> Billings, MT 59101-7378
> phone: (406) 245-5002 ext 105
> Fax: (406) 245-4889
> WWW: http://www.link-comm.com
> MailTo:mark at link-comm.com
>
>
--
Joel Sherrill, Ph.D. Director of Research & Development
joel at OARcorp.com On-Line Applications Research
Ask me about RTEMS: a free RTOS Huntsville AL 35805
Support Available (256) 722-9985
More information about the users
mailing list