64bit Genode and Fiasco.OC

Daniel Waddington d.waddington at ...60...
Fri Mar 11 17:39:30 CET 2011


Hi Stefan,
I didn't realize that the linux_x86 would build with the 64bit 
compiler.  This now works fine on a 64bit host.  However, I couldn't get 
the 32bit compiler to work with your suggested SPECS flags though - it 
still trys to compile the 64bit version.

Daniel

On 03/11/2011 07:52 AM, Stefan Kalkowski wrote:
> Hi Daniel,
>
> On 03/11/2011 04:29 PM, Daniel Waddington wrote:
>> Hi Stefan,
>> Good news is that the x86_64 build seemed to work.  Bad news is that it
>> *may* have broken the linux_x86 build...see below.  You might want to check
>> this yourself.
> I don't think this has something to do with the 64-bit patch for Fiasco.OC.
>
> I guess you tried to build Genode's Linux version on a 64-bit system
> with Gendode's 32-bit toolchain.
>
> The Genode build system uses some heuristic to determine which Linux
> version to build for you, by analyzing the underlying system, so it
> tries to build a 64-bit version for you, while using a compiler
> targeting 32-bit. To circumvent this heuristic, you can explicitly state
> in the 'etc/specs.conf' to build the 32-bit version:
>
> SPECS =	genode linux_x86_32 sdl
>
> or change the compiler to target 64bit.
>
> I hope that helps.
>
> Best regards.
> Stefan
>
>> Thanks
>> Daniel
>>
>>
>>    Library thread
>>    Library signal
>>    Library syscall
>>      COMPILE  lx_clone.o
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S: Assembler messages:
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S:21: Error: bad register name `%rsi'
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S:22: Error: bad register name `%rcx'
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S:26: Error: bad register name `%rdi'
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S:29: Error: bad register name `%rdx'
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S:30: Error: bad register name `%r8'
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S:31: Error: bad register name `%r9'
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S:32: Error: bad register name `%rsp)'
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S:40: Error: bad register name `%rax'
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S:50: Error: bad register expression
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S:57: Error: bad register name `%rax'
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S:58: Error: bad register name `%rdi'
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S:59: Error: bad register name `%rax'
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S:61: Error: bad register name `%rax'
>> /home/dwaddington/git/omnios/genode/base-linux/../base-linux/src/platform/x8
>> 6_64/lx_clone.S:62: Error: bad register name `%rax'
>> make[2]: *** [lx_clone.o] Error 1
>> make[1]: *** [syscall.lib] Error 2
>> make: *** [gen_deps_and_build_targets] Error 2
>>
>>
>>
>>
>>> -----Original Message-----
>>> From: Stefan Kalkowski [mailto:stefan.kalkowski at ...1...]
>>> Sent: Thursday, March 10, 2011 5:38 AM
>>> To: genode-main at lists.sourceforge.net
>>> Subject: Re: 64bit Genode and Fiasco.OC
>>>
>>> Hello Daniel,
>>>
>>> Now, the Fiasco.OC/Genode variant is 64-bit ready. Please, checkout the
>>> last revision from our subversion repository. You need to create a new
>>> build-directory with the 'create_builddir' tool. There are new
>>> platform-specifications available to it, namely: 'foc_x86_32' and
>>> 'foc_x86_64'.
>>>
>>> Alternatively, you might place a 'specs.conf' file in the 'etc'
>>> directory of an existing Fiasco.OC/Genode build-directory, and put the
>>> following line into it:
>>>
>>> SPECS = genode foc_x86_64
>>>
>>> Moreover, you've to build a 64-bit version of a Genode-compliant gcc by
>>> yourself. This is simply done by executing, the 'toolchain' script in
>>> Genode's 'tool' directory:
>>>
>>> toolchain all
>>>
>>> This will build gcc for 64-Bit (when executed in 64-bit Linux). You
>>> have
>>> to install MPFR, GMP, MPC, PPL, and CLooG development libraries
>>> beforehand. The resulting tool-chain gets installed at
>>> '/usr/local/genode-gcc'.
>>>
>>> I hope that helps.
>>>
>>> Best regards
>>> Stefan
>>>
>>> On 03/04/2011 01:33 AM, Daniel Waddington wrote:
>>>> Hi,
>>>>
>>>> Is Genode+Fiasco.OC x86_64 known not to work?  After various fiddling
>>>> about with include files, and –m64 flags I got as far as the
>>> following..
>>>>
>>>>
>>>> Thanks
>>>>
>>>> Daniel
>>>>
>>>>
>>>>
>>>>    Program drivers/framebuffer/vesa/vesa_drv
>>>>
>>>>      COMPILE  decode.o
>>>>
>>>>      COMPILE  fpu.o
>>>>
>>>>      COMPILE  framebuffer.o
>>>>
>>>>      COMPILE  hw_emul.o
>>>>
>>>>      COMPILE  ifx86emu.o
>>>>
>>>>      COMPILE&n>
>>>>
>>>>      COMPILE  ops.o
>>>>
>>>>      COMPILE  ops2.o
>>>>
>>>>      COMPILE  prim_ops.o
>>>>
>>>>      COMPILE  sys.o
>>>>
>>>>      LINK     vesa_drv
>>>>
>>>> ifx86emu.o: In function `unsigned int inx<unsigned int>(unsigned
>>> short)':
>>>> ifx86emu.cc:(.text+0x4c8): undefined reference to `bool
>>>> hw_emul_handle_port_read<unsigned int>(unsigned short, unsigned
>>> int*)'
>>>> ifx86emu.o: In function `void outx<unsigned int>(unsigned short,
>>>> unsigned int)':
>>>>
>>>> ifx86emu.cc:(.text+0x649): undefined reference to `bool
>>>> hw_emul_handle_port_write<unsigned int>(unsigned short, unsigned
>>> int)'
>>>> collect2: ld returned 1 exit lass=MsoNormal>make[2]: *** [vesa_drv]
>>> Error 1
>>>> make[1]: *** [vesa_drv.prg] Error 2
>>>>
>>>> make: *** [gen_deps_and_build_targets] Error 2
>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>> ---------
>>>> What You Don't Know About Data Connectivity CAN Hurt You
>>>> This paper provides an overview of data connectivity, details
>>>> its effect on application quality, and explores various alternative
>>>> solutions. http://p.sf.net/sfu/progress-d2d
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Genode-main mailing list
>>>> Genode-main at lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>> --
>>> Stefan Kalkowski
>>> Genode Labs
>>>
>>> http://www.genode-labs.com/ · http://genode.org/
>>>
>>> Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
>>> Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
>>>
>>> -----------------------------------------------------------------------
>>> -------
>>> Colocation vs. Managed Hosting
>>> A question and answer guide to determining the best fit
>>> for your organization - today and in the future.
>>> http://p.sf.net/sfu/internap-sfd2d
>>> _______________________________________________
>>> Genode-main mailing list
>>> Genode-main at lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>
>>
>> ------------------------------------------------------------------------------
>> Colocation vs. Managed Hosting
>> A question and answer guide to determining the best fit
>> for your organization - today and in the future.
>> http://p.sf.net/sfu/internap-sfd2d
>> _______________________________________________
>> Genode-main mailing list
>> Genode-main at lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>

-- 

*Daniel G. Waddington Ph.D. C.Sci. **| **Samsung Information Systems 
America (SISA)*

Principal Engineer/Research Manager, Systems Research Group, Computer 
Science Lab

t: 408-544-5675   f: 408-544-5540  c: 408-890-0479

d.waddington at ...60... <mailto:d.waddington at ...60...>

*****P*lease consider the environment before printing this email.

This message is intended only for the named recipient(s) above and may 
contain confidential or privileged informat ion or protected attorney 
work product.  If you are not the intended recipient, any review, 
dissemination, distribution or copying is strictly prohibited.  If you 
have received this message in error, please immediately notify the 
sender and delete this message and its attachments from your computer 
and dispose of all other copies or printouts.  Thank you.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.genode.org/pipermail/users/attachments/20110311/d63d2d0b/attachment.html>


More information about the users mailing list