Difference between revisions of "OOo Fedora Build"
Minicheong (talk | contribs) (→Openoffice.org Fedora Build) |
(OOo Category) |
||
(60 intermediate revisions by 8 users not shown) | |||
Line 1: | Line 1: | ||
= Openoffice.org Fedora Build = | = Openoffice.org Fedora Build = | ||
+ | [[OOo Mac Build]] - [[OOo Windows Build]] | ||
* Resources | * Resources | ||
** [http://wiki.services.openoffice.org/wiki/Build_Software_Requirements "Build Software Requirements"] | ** [http://wiki.services.openoffice.org/wiki/Build_Software_Requirements "Build Software Requirements"] | ||
** [http://wiki.services.openoffice.org/wiki/Building_OpenOffice.org "Building OpenOffice.org"] | ** [http://wiki.services.openoffice.org/wiki/Building_OpenOffice.org "Building OpenOffice.org"] | ||
− | {| border="1 | + | {| border="1" |
|+ CDOT Computer Status - Who is working where | |+ CDOT Computer Status - Who is working where | ||
|- | |- | ||
! Student Name !! CDOT Computer Name !! Operation !! Status | ! Student Name !! CDOT Computer Name !! Operation !! Status | ||
|- | |- | ||
− | | [[User:Bbarcick|Bartosz]] (irc:BartB) || Australia || | + | | [[User:Bbarcick|Bartosz]] (irc:BartB) Aaron (irc:achan66)|| Australia || building DEV40 || Distcc: Done |
|- | |- | ||
− | | | + | | [[User:jtpau|Jerry Pau]] (irc: jPau) || Hong Kong || m40 Done; m41 Done || Distcc: Done |
|- | |- | ||
− | | | + | | Daeseon Moon (irc:daeseon) || Germany || <b>Build Success</b> || Distcc: Done |
|- | |- | ||
− | | | + | |Ladan Zahiroleslam(irc:l_zahir)|| hongkong ||I'm getting so many build problems :(|| Distcc: Done |
|- | |- | ||
− | | [[User:Minicheong|Frankie]] (IRC: Mini_Cheong) || Liberia || | + | | [[User:Tiago|Tiago]] (IRC: Kamots) || India || Building OOo || Regular Build: in progress |
+ | |- | ||
+ | | [[User:Minicheong|Frankie]] (IRC: Mini_Cheong) || Liberia || <b>Build Success!!</b> <br/> Started: Jan 30 - 9:41pm <br/> Ended: Jan 31 - 1:53am || Distcc: Done | ||
+ | |- | ||
+ | | [[User:Wfred|Fred Wang]] (IRC: WFred) || Locally || Build Succeeded || | ||
|} | |} | ||
Line 29: | Line 34: | ||
== Setting C and C++ compilers == | == Setting C and C++ compilers == | ||
+ | * export CC='distcc gcc' | ||
+ | * export CXX='distcc g++' | ||
+ | * Read this as well:[http://www.linux-tutorial.info/modules.php?name=ManPage&sec=1&manpage=distcc http://www.linux-tutorial.info/modules.php?name=ManPage&sec=1&manpage=distcc] | ||
+ | |||
+ | == Setting Distcc for OO build == | ||
+ | * Create directory "/usr/lib/distcc/bin" | ||
+ | * Make symbolic links in the directory | ||
+ | ** ln -s /usr/bin/distcc /usr/lib/distcc/bin/g++ | ||
+ | ** ln -s /usr/bin/distcc /usr/lib/distcc/bin/c++ | ||
+ | ** ln -s /usr/bin/distcc /usr/lib/distcc/bin/cc | ||
+ | ** ln -s /usr/bin/distcc /usr/lib/distcc/bin/gcc | ||
+ | * Add the directory at the first of your PATH environment variable | ||
+ | ** export PATH=/usr/lib/distcc/bin:$PATH | ||
+ | * After configuration is done, add MAXPROCESS in environment variable | ||
+ | ** export MAXPROCESS=8 | ||
+ | * "*note* if having problems with libnss.so use below command | ||
+ | ** export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH | ||
+ | * Execute dmake with option "-E" | ||
+ | ** dmake -E | ||
+ | * Read this as well [http://tools.openoffice.org/dmake/dmake_4.3.html dmake Man Page] | ||
+ | |||
+ | == A script to Log and Time the execution == | ||
+ | To be able to capture the output of your execution and time it at the same time, save this script in a file. I called this file "logNtime". Give "logNtime" execution permission: | ||
+ | <pre> | ||
+ | #!/bin/bash | ||
+ | __cname__=$1 | ||
+ | echo "$__cname__ exec time: ------------------" >> "$__cname__"time.log | ||
+ | echo start time: `date` >> "$__cname__"time.log | ||
+ | while [[ $# != 0 ]]; do | ||
+ | __cmd__="$__cmd__ $1" | ||
+ | shift | ||
+ | done | ||
+ | if [ -f "$__cname__"output.log ]; then | ||
+ | mv "$__cname__"output.log "$__cname__"output.`date +%y%m%d%H%M%S`.log | ||
+ | fi | ||
+ | echo $__cmd__ >> "$__cname__"time.log | ||
+ | $__cmd__ >> "$__cname__"output.log 2>> "$__cname__"output.log | ||
+ | echo end time: `date` >> "$__cname__"time.log | ||
+ | echo "-----------------------------------------" >> "$__cname__"time.log | ||
+ | </pre> | ||
+ | Then run your commands like: | ||
+ | <pre> | ||
+ | logNtime dmake -E | ||
+ | </pre> | ||
+ | This will create two log files: dmakeoutput.log and dmaketime.log which hold the output of dmake and it's execution | ||
== Configuring The Source == | == Configuring The Source == | ||
+ | Configuring error is different for every machine.<br/> | ||
+ | Here is some errors and fixes for it. | ||
+ | |||
+ | {| border="1" width="500" | ||
+ | ! Issues !! Solutions | ||
+ | |- | ||
+ | | no cups/cups.h || yum install cups-devel | ||
+ | |- | ||
+ | | no JDK installed || yum install java-1.7.0-icedtea-devel.x86_64 | ||
+ | |- | ||
+ | | no gperf || yum install gperf.x86_64 | ||
+ | |- | ||
+ | | no Ant || yum install ant.x86_64 | ||
+ | |- | ||
+ | |Can't locate Archive/Zip.pm in @INC ||yum install perl-Archive-Zip | ||
+ | |- | ||
+ | | no tcsh ||yum install tcsh | ||
+ | |} | ||
+ | If using the pre-built Mozilla libraries, this configure command works: | ||
+ | |||
+ | ./configure --with-use-shell=bash --prefix=/home/dev/dev-install/ --with-system-stdlibs --disable-build-mozill | ||
== Setting Environment Variables == | == Setting Environment Variables == | ||
+ | source LinuxX86-64Env.Set.sh | ||
== Bootstrapping == | == Bootstrapping == | ||
+ | ./bootstrap | ||
+ | == Build == | ||
+ | dmake '''2>~/errorLog''' | ||
− | == Build == | + | == Build Issue == |
+ | *[http://www.openoffice.org/issues/show_bug.cgi?id=91641 rhino fails to build with OpenJDK] | ||
+ | *[http://qa.openoffice.org/issues/show_bug.cgi?id=84787 libnss3 patch] | ||
+ | *[http://www.openoffice.org/issues/show_bug.cgi?id=97715 rpmbuild buildroot error] | ||
+ | |||
+ | [[Category:OpenOffice.org]] |
Latest revision as of 16:06, 11 May 2009
Contents
Openoffice.org Fedora Build
OOo Mac Build - OOo Windows Build
Student Name | CDOT Computer Name | Operation | Status |
---|---|---|---|
Bartosz (irc:BartB) Aaron (irc:achan66) | Australia | building DEV40 | Distcc: Done |
Jerry Pau (irc: jPau) | Hong Kong | m40 Done; m41 Done | Distcc: Done |
Daeseon Moon (irc:daeseon) | Germany | Build Success | Distcc: Done |
Ladan Zahiroleslam(irc:l_zahir) | hongkong | I'm getting so many build problems :( | Distcc: Done |
Tiago (IRC: Kamots) | India | Building OOo | Regular Build: in progress |
Frankie (IRC: Mini_Cheong) | Liberia | Build Success!! Started: Jan 30 - 9:41pm Ended: Jan 31 - 1:53am |
Distcc: Done |
Fred Wang (IRC: WFred) | Locally | Build Succeeded |
Getting the Source
Use:
svn co http://svn.services.openoffice.org/ooo/tags/DEV300_m40
to checkout the source. Make sure you are using http instead of svn, if you are checking the source out in Seneca.
Setting C and C++ compilers
- export CC='distcc gcc'
- export CXX='distcc g++'
Setting Distcc for OO build
- Create directory "/usr/lib/distcc/bin"
- Make symbolic links in the directory
- ln -s /usr/bin/distcc /usr/lib/distcc/bin/g++
- ln -s /usr/bin/distcc /usr/lib/distcc/bin/c++
- ln -s /usr/bin/distcc /usr/lib/distcc/bin/cc
- ln -s /usr/bin/distcc /usr/lib/distcc/bin/gcc
- Add the directory at the first of your PATH environment variable
- export PATH=/usr/lib/distcc/bin:$PATH
- After configuration is done, add MAXPROCESS in environment variable
- export MAXPROCESS=8
- "*note* if having problems with libnss.so use below command
- export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
- Execute dmake with option "-E"
- dmake -E
- Read this as well dmake Man Page
A script to Log and Time the execution
To be able to capture the output of your execution and time it at the same time, save this script in a file. I called this file "logNtime". Give "logNtime" execution permission:
#!/bin/bash __cname__=$1 echo "$__cname__ exec time: ------------------" >> "$__cname__"time.log echo start time: `date` >> "$__cname__"time.log while [[ $# != 0 ]]; do __cmd__="$__cmd__ $1" shift done if [ -f "$__cname__"output.log ]; then mv "$__cname__"output.log "$__cname__"output.`date +%y%m%d%H%M%S`.log fi echo $__cmd__ >> "$__cname__"time.log $__cmd__ >> "$__cname__"output.log 2>> "$__cname__"output.log echo end time: `date` >> "$__cname__"time.log echo "-----------------------------------------" >> "$__cname__"time.log
Then run your commands like:
logNtime dmake -E
This will create two log files: dmakeoutput.log and dmaketime.log which hold the output of dmake and it's execution
Configuring The Source
Configuring error is different for every machine.
Here is some errors and fixes for it.
Issues | Solutions |
---|---|
no cups/cups.h | yum install cups-devel |
no JDK installed | yum install java-1.7.0-icedtea-devel.x86_64 |
no gperf | yum install gperf.x86_64 |
no Ant | yum install ant.x86_64 |
Can't locate Archive/Zip.pm in @INC | yum install perl-Archive-Zip |
no tcsh | yum install tcsh |
If using the pre-built Mozilla libraries, this configure command works:
./configure --with-use-shell=bash --prefix=/home/dev/dev-install/ --with-system-stdlibs --disable-build-mozill
Setting Environment Variables
source LinuxX86-64Env.Set.sh
Bootstrapping
./bootstrap
Build
dmake 2>~/errorLog