[Barrelfish-users] Building the latest release
李才
licai at pku.edu.cn
Wed Apr 3 15:04:26 CEST 2013
Hi Zaheer,
I have built the latest release now.
The problem I have met before is the module `System.Random'.
Thanks for your help.
Errors I have met are attached bellow, for people to search.
---------------------------------------------
Environment:
barrelfish-12e657e0ed48
ubuntu 12.10
gcc-4.7
ghc-7.4.1
parsec 3.1 && random
ghc-paths-0.1.0.8
Packages needed:
1. apt-get packages:
libgmp3-dev libgmp3c2
cabal-install
g++ qemu
2. Downloaded packages:
ghc-7.4.1-i386-unknown-linux.tar.bz2
ghc-paths-0.1.0.8.tar.gz
Command issued:
1. in the ghc-path directory:
runhaskell Setup.hs configure &&
runhaskell Setup.hs build &&
sudo runhaskell Setup.hs install ;
2. parsec && random
sudo apt-get install cabal-install &&
cabal update &&
cabal install 'parsec >= 3' &&
cabal install random
Errors
1. *.o.depend
Solution: For these 'No such file or directory', just ignore it.
Makefile:62: x86_64/tools/elver/_for_elver/elver.o.depend: No such file or directory
Makefile:81: x86_64/tools/elver/_for_elver/lib.o.depend: No such file or directory
Makefile:100: x86_64/tools/lib/elf/elf64.o.depend: No such file or directory
Makefile:117: x86_64/tools/elver/_for_elver/boot.o.depend: No such file or directory
......
2. Could not find module `Text.ParserCombinators.Parsec.Language'
Solution:
install the parsec-3.1.3 with cabal.
`cabal update && cabal install 'parsec >=3' && cabal install random ;`
Makefile:87303: x86_64/trace_definitions/trace_defs.o.depend: No such file or directory
Makefile:87388: x86_64/errors/errno.o.depend: No such file or directory
ghc -i../tools/fugu -odir ./tools/tools/fugu -hidir ./tools/tools/fugu -rtsopts=all --make ../tools/fugu/Main.lhs -o ./tools/bin/fugu -i../tools/fof
../tools/fugu/Parser.hs:24:8:
Could not find module `Text.ParserCombinators.Parsec.Language'
Use -v to see a list of the files searched for.
make: *** [tools/bin/fugu] Error 1
seed at seed-vbx:~/src/barrelfish-12e657e0ed48/build$ ghc-pkg list parsec
/usr/local/lib/ghc-7.4.1/package.conf.d
seed at seed-vbx:~/src/barrelfish-12e657e0ed48/build$
3. Could not find module `System.Random'
Solution:
install the random module with cabal.
`cabal install random;`
Makefile:87388: x86_64/errors/errno.o.depend: No such file or directory
ghc -i../tools/fugu -odir ./tools/tools/fugu -hidir ./tools/tools/fugu -rtsopts=all --make ../tools/fugu/Main.lhs -o ./tools/bin/fugu -i../tools/fof
../tools/fugu/FuguBackend.lhs:565:10:
Could not find module `System.Random'
Use -v to see a list of the files searched for.
make: *** [tools/bin/fugu] Error 1
4. g++ not installed
Solution: install the g++.
`apt-get install g++;`
Generating x86_64/lib/cxx/_for_lib_cxx/src/bind.o.depend
make: g++: Command not found
make: *** [x86_64/lib/cxx/_for_lib_cxx/src/bind.o.depend] Error 127
5. gcc-4.5 does not work.
Solution: switch to gcc-4.6 or gcc-4.7.
# I have this problem just because I switched the default gcc on 12.0 to gcc-4.5 to see whether I can solve other problem.
../lib/barrelfish/dispatch.c: In function ‘disp_trap’:
../lib/barrelfish/dispatch.c:477:20: internal compiler error: in memory_address_addr_space, at explow.c:504
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.5/README.Bugs> for instructions.
make: *** [x86_64/lib/barrelfish/_for_lib_barrelfish/dispatch.o] Error 1
#########################################################
# with the help of Kornilios Kourtis and Chothia Zaheer #
#########################################################
----- Original Message -----
From: Chothia Zaheer <zchothia at student.ethz.ch>
To: 李才 <licai at pku.edu.cn>
Cc: barrelfish-users <barrelfish-users at lists.inf.ethz.ch>
Sent: Wed, 03 Apr 2013 04:16:35 +0800 (CST)
Subject: RE: [Barrelfish-users] Building the latest release
Hi Richard,
Very odd, your setup sounds just fine. I am using 64-bit Ubuntu, but see no
reason why the 32-bit version shouldn't work.
The only other idea I have is to test whether parsec can be loaded from an
interactive session:
$ ghci -v -package parsec
(or start ghci and enter ':m Text.ParserCombinators.Parsec.Language')
Best,
--Zaheer
> -----Original Message-----
> From: 李才 [mailto:licai at pku.edu.cn]
> Sent: 02 April 2013 03:52
> To: Chothia Zaheer
> Cc: barrelfish-users
> Subject: RE: [Barrelfish-users] Building the latest release
>
> Hi Zaheer,
>
> Thanks, I have tried `cabal install 'parsec >= 3'`, but it still doesn't work.
>
> the `ghc-pkg list parsec` output is just like yours:
> seed at seed-vbx:~/src/barrelfish-12e657e0ed48/build$ ghc-pkg list parsec
> /usr/local/lib/ghc-7.4.1/package.conf.d
> /home/seed/.ghc/i386-linux-7.4.1/package.conf.d
> parsec-3.1.3
>
> My ghc-7.4.1 was installed with the Binary package downloaded from the
> http://www.haskell.org/ghc/download_ghc_7_4_1
>
> And I am runing on the i386 OS.
> Should I change to x86_64?
>
> Which one are you using?
>
> Regards,
> Richard
>
>
> ----- Original Message -----
> From: Chothia Zaheer <zchothia at student.ethz.ch>
> To: 李才 <licai at pku.edu.cn>
> Cc: barrelfish-users <barrelfish-users at lists.inf.ethz.ch>
> Sent: Tue, 02 Apr 2013 04:41:28 +0800 (CST)
> Subject: RE: [Barrelfish-users] Building the latest release
>
> Just an idea, but you could check if the package is registered:
>
> $ ghc-pkg list parsec
> /home/zchothia/toolkit/ghc-7.4.1/lib/ghc-7.4.1/package.conf.d
> /home/zchothia/.ghc/x86_64-linux-7.4.1/package.conf.d
> parsec-3.1.3
>
> Failing that perhaps uninstall the version from the package manager and
> install
> with Cabal:
>
> $ cabal install 'parsec >= 3'
>
> (See this if cabal isn't installed:
> https://github.com/haskell/cabal/wiki/cabal-install#quick-installation-on-
> unix)
>
> The *.depend messages can be safely ignored. These will be generated during
> the
> build process.
>
> --Zaheer
>
> > -----Original Message-----
> > From: 李才 [mailto:licai at pku.edu.cn]
> > Sent: 01 April 2013 18:26
> > To: Kornilios Kourtis
> > Cc: barrelfish-users
> > Subject: Re: [Barrelfish-users] Building the latest release
> >
> > No, I have checked it.
> > In fact, I have tried both cases, including having the libghc6-parsec2-dev
> and
> > not.
> >
> > Is there any thing to do with virtualbox? I am running on virtualbox, trying
> > both ubuntu 12.04 and 12.10.
> > For non-virtualbox one, I only tried 12.04.
> >
> > And I am also wondering why there are no *.o.depend files after hake
> succeed?
> >
> > Regards
> >
> >
> > ----- Original Message -----
> > From: Kornilios Kourtis <kornilios.kourtis at inf.ethz.ch>
> > To: 李才 <licai at pku.edu.cn>
> > Sent: Mon, 01 Apr 2013 23:58:38 +0800 (CST)
> > Subject: Re: [Barrelfish-users] Building the latest release
> >
> > On Mon, Apr 01, 2013 at 11:46:54PM +0800, 李才 wrote:
> > > Hi Kornilios,
> > >
> > > Thanks for your reply.
> > > But I have already installed the libghc-parsec3-dev on Ubuntu 12.10,
> > using `sudo apt-get libghc-parsec3-dev`.
> > > It still does not work.
> > >
> > > Is there any thing wrong if I use apt-get to install it?
> >
> > That's strange...
> > Using apt-get install should be fine.
> >
> > More of a long shot, but are there any other versions of the parsec
> > library in your system? (e.g., libghc6-parsec2-dev). Are they installed?
> >
> > cheers,
> > Kornilios.
> >
> > >
> > > Regards,
> > > Richard
> > >
> > >
> > >
> > > ----- Original Message -----
> > > From: Kornilios Kourtis <kornilios.kourtis at inf.ethz.ch>
> > > To: 李才 <licai at pku.edu.cn>
> > > Cc: barrelfish-users at lists.inf.ethz.ch
> > > Sent: Mon, 01 Apr 2013 23:35:41 +0800 (CST)
> > > Subject: Re: [Barrelfish-users] Building the latest release
> > >
> > > Hi Richard,
> > >
> > > On Mon, Apr 01, 2013 at 08:31:56PM +0800, 李才 wrote:
> > > > Hi all,
> > > >
> > > > I am building the barrelfish-12e657e0ed48(release2013-03-22) these
> > days, but there is a problem.
> > > > The Hake procedure seems ok, but when it comes to `make`, it can not
> > find some files("***.o.depend").
> > > > Has anyone met the similar problem? Why it does not work?
> > > >
> > > >
> > > > Regards
> > > > Richard
> > > >
> > > >
> > > > *****************************************************
> > > > 1.My building environment is:
> > > > 1) ubuntu 12.10/12.04 both tried
> > > > 2) ghc-7.4.1
> > > > 3) Parsec 3.1
> > > > 4) ghc-paths-0.1.0.8
> > > > 5) gcc 4.5/4.6/4.7 all tried.
> > > >
> > > > 2.This some of the output by `make`:
> > > > Makefile:83499: x86_64/kernel/arch/x86/rtc.o.depend: No such file or
> > directory
> > > > Makefile:83518: x86_64/kernel/arch/x86/timing.o.depend: No such file
> > or directory
> > > > Makefile:83537: x86_64/kernel/arch/x86/startup_x86.o.depend: No such
> > file or directory
> > > > Makefile:83556: x86_64/kernel/arch/x86/mcheck.o.depend: No such file
> > or directory
> > > > Makefile:83575: x86_64/kernel/arch/x86/ipi_notify.o.depend: No such
> > file or directory
> > > > Makefile:83591: x86_64/kernel/arch/x86_64/boot.o.depend: No such
> file
> > or directory
> > > > Makefile:83607: x86_64/kernel/arch/x86_64/entry.o.depend: No such
> file
> > or directory
> > > > Makefile:83623: x86_64/kernel/arch/x86/init_ap_x86_64.o.depend: No
> > such file or directory
> > > > Makefile:83639: x86_64/kernel/arch/x86/init_ap_x86_32.o.depend: No
> > such file or directory
> > > > Makefile:87361: x86_64/trace_definitions/trace_defs.o.depend: No
> such
> > file or directory
> > > > Makefile:87388: x86_64/errors/errno.o.depend: No such file or
> > directory
> > > > ghc -i../tools/fugu -odir ./tools/tools/fugu -hidir
> > ./tools/tools/fugu -rtsopts=all --make ../tools/fugu/Main.lhs -o
> > ./tools/bin/fugu -i../tools/fof
> > > >
> > > > ../tools/fugu/Parser.hs:24:8:
> > > > Could not find module `Text.ParserCombinators.Parsec.Language'
> > > > Use -v to see a list of the files searched for.
> > > > make: *** [tools/bin/fugu] Error 1
> > >
> > >
> > > I'm guessing this the problem. Can you try installing the parsec library
> > > for ghc? In debian, for example, it's the libghc-parsec3-dev package.
> > >
> > > cheers,
> > > Kornilios.
> > >
> > > >
> > > > 3.This is the Hake output:
> > > > lc at licaivbx:~/src/barrelfish-12e657e0ed48/build$ ../hake/hake.sh -s
> ..
> > -i . -a x86_64
> > > > Install directory is .
> > > > Source directory is ..
> > > > Architectures to build: "x86_64"
> > > > Creating a local hake directory...
> > > > Setting up hake build directory...
> > > > Creating new symbolic_targets.mk file.
> > > > Building hake...
> > > > [ 1 of 14] Compiling Path ( ../hake/Path.hs, hake/Path.o
> )
> > > > [ 2 of 14] Compiling HakeTypes ( ../hake/HakeTypes.hs,
> > hake/HakeTypes.o )
> > > > [ 3 of 14] Compiling Args ( ../hake/Args.hs, hake/Args.o
> )
> > > > [ 4 of 14] Compiling Config ( hake/Config.hs,
> hake/Config.o
> > )
> > > > [ 5 of 14] Compiling ArchDefaults ( ../hake/ArchDefaults.hs,
> > hake/ArchDefaults.o )
> > > > [ 6 of 14] Compiling X86_64 ( ../hake/X86_64.hs,
> > hake/X86_64.o )
> > > > [ 7 of 14] Compiling X86_32 ( ../hake/X86_32.hs,
> > hake/X86_32.o )
> > > > [ 8 of 14] Compiling SCC ( ../hake/SCC.hs, hake/SCC.o )
> > > > [ 9 of 14] Compiling ARMv5 ( ../hake/ARMv5.hs,
> hake/ARMv5.o
> > )
> > > > [10 of 14] Compiling ARM11MP ( ../hake/ARM11MP.hs,
> > hake/ARM11MP.o )
> > > > [11 of 14] Compiling XScale ( ../hake/XScale.hs,
> > hake/XScale.o )
> > > > [12 of 14] Compiling ARMv7 ( ../hake/ARMv7.hs,
> hake/ARMv7.o
> > )
> > > > [13 of 14] Compiling RuleDefs ( ../hake/RuleDefs.hs,
> > hake/RuleDefs.o )
> > > > [14 of 14] Compiling Main ( ../hake/Main.hs, hake/Main.o
> )
> > > > Linking hake/hake ...
> > > > Running hake...
> > > > Source directory: ..
> > > > BF Source directory: ..
> > > > Install directory: .
> > > > Reading directory tree...
> > > > Reading Hakefiles...
> > > > Writing HakeFile module...
> > > > Evaluating Hakefiles...
> > > > Done!
> > > > Generating Makefile - this may take some time (and RAM)...
> > > >
> > > > OK - Hake has bootstrapped. You should now have a Makefile in this
> > > > directory, and you can type "make" to build a predefined target.
> > > >
> > > > To change configuration options, edit the Config.hs file in the hake
> > > > subdirectory of this directory and run "make rehake".
> > > >
> > > > To change the set of symbolic make targets available (for example,
> to
> > > > build a different set of modules or architectures for your boot
> > image),
> > > > edit the local copy of the symbolic_targets.mk in this directory.
> > > >
> > > >
> > > > _______________________________________________
> > > > Barrelfish-users mailing list
> > > > Barrelfish-users at lists.inf.ethz.ch
> > > > https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users
> > >
> > > --
> > > Kornilios Kourtis
> >
> > --
> > Kornilios Kourtis
> >
> > _______________________________________________
> > Barrelfish-users mailing list
> > Barrelfish-users at lists.inf.ethz.ch
> > https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users
More information about the Barrelfish-users
mailing list