openSuSE Linuxでビルド

  • yast
  • zypper
    • ビルドの依存関係をすべてインストール
    • openjdkをインストールする
    • gitとdoxygenをインストールする。
#zypper source-install -d libreoffice*
#zypper install git doxygen java-1_6_0-openjdk
$git clone git://anongit.freedesktop.org/libreoffice/core libo
$cd libo
$./autogen.sh --with-num-cpus=2 
$make

build error at sal and wizards

[ build CXX ] sal/cppunittester/cppunittester.cxx
R=c:/cygwin/home/mako/git && O=$R/libo/solver/wntmsci12.pro && W=$R/libo/workdir/wntmsci12.pro && S=$R/libo && mkdir -p $W/CxxObject/sal/cppunittester/ $W/Dep/CxxObject/sal/cppunittester/ && /cygdrive/c/PROGRA~2/MICROS~1.0/VC/bin/cl.exe -DBOOST_MEM_FN_ENABLE_CDECL -DCPPU_ENV=msci -DENABLE_GRAPHITE -DENABLE_GTK -DINTEL -DM1500 -DMSC -DNOMINMAX -DOSL_DEBUG_LEVEL=1 -DPRODUCT -DSAL_LOG_INFO -DSAL_LOG_WARN -DSOLAR_JAVA -DSUPD=360 -DWIN32 -DWINVER=0x0500 -DWNT -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NON_CONFORMING_SWPRINTFS -D_CRT_SECURE_NO_DEPRECATE -D_DLL -D_MT -D_REENTRANT -D_WIN32_IE=0x0500 -D_X86_=1 -Gd -GR -Gs -GS -Gy -MD -nologo -Wall -wd4005 -wd4061 -wd4127 -wd4180 -wd4189 -wd4191 -wd4217 -wd4242 -wd4244 -wd4245 -wd4250 -wd4251 -wd4275 -wd4290 -wd4294 -wd4350 -wd4355 -wd4365 -wd4503 -wd4505 -wd4511 -wd4512 -wd4514 -wd4555 -wd4611 -wd4619 -wd4625 -wd4626 -wd4640 -wd4668 -wd4675 -wd4686 -wd4692 -wd4706 -wd4710 -wd4711 -wd4373 -wd4738 -wd4786 -wd4800 -wd4820 -wd4826 -wd4917 -wd4996 -Zc:forScope,wchar_t- -Zm500 -Zi -DEXCEPTIONS_ON -EHa -Fd -showIncludes -I$S/sal/cppunittester -IC:/cygwin$O/inc/stl -IC:/cygwin$O/inc/external -IC:/cygwin$O/inc -IC:/cygwin$S/solenv/inc/wntmsci12 -IC:/cygwin$S/solenv/inc -IC:/cygwin$S/res -IC:/PROGRA~1/Java/JDK16~1.0_2/include/win32 -IC:/PROGRA~1/Java/JDK16~1.0_2/include -IC:/PROGRA~1/MICROS~4/Windows/v7.1/include -IC:/PROGRA~2/MICROS~1.0/VC/include -IC:/PROGRA~2/MI5E29~1/include -I$S/sal/inc -c $S/sal/cppunittester/cppunittester.cxx -Fo$W/CxxObject/sal/cppunittester/cppunittester.o | C:/cygwin/home/mako/git/libo/solenv/gbuild/filter-showIncludes.pl /home/mako/git/libo/workdir/wntmsci12.pro/Dep/CxxObject/sal/cppunittester/cppunittester.d /home/mako/git/libo/workdir/wntmsci12.pro/CxxObject/sal/cppunittester/cppunittester.o /home/mako/git/libo/sal/cppunittester/cppunittester.cxx; exit ${PIPESTATUS[0]}
c:\cygwin\home\mako\git\libo\sal\inc\cppunittester/protectorfactory.hxx(37) : fatal error C1083: Cannot open include file: 'cppunit/Protector.h': No such file or directory
make: *** No rule to make target `/home/mako/git/libo/workdir/wntmsci12.pro/CObject/sal/systools/win32/uwinapi/snprintf.o', needed by `/home/mako/git/libo/workdir/wntmsci12.pro/LinkTarget/Library/uwinapi.lib'. Stop.

http://wiki.documentfoundation.org/User:Foral/Build_Win

[ build DEP ] SRS:cal/res
R=/home/mako/git && S=$R/libo && O=$S/solver/wntmsci12.pro && W=$S/workdir/wntmsci12.pro && mkdir -p $W/Dep/SrsTarget/cal/ && cat $W/Dep/SrsPartTarget/wizards/source/schedule/schedule.src.d > $W/Dep/SrsTarget/cal/res.d
R=c:/cygwin/home/mako/git && O=$R/libo/solver/wntmsci12.pro && W=$R/libo/workdir/wntmsci12.pro && S=$R/libo && $O/bin/makedepend.exe -I. -IC:/cygwin$O/inc/stl -IC:/cygwin$O/inc/external -IC:/cygwin$O/inc -IC:/cygwin$S/solenv/inc/wntmsci12 -IC:/cygwin$S/solenv/inc -IC:/cygwin$S/res -IC:/PROGRA~1/Java/JDK16~1.0_2/include/win32 -IC:/PROGRA~1/Java/JDK16~1.0_2/include -IC:/PROGRA~1/MICROS~4/Windows/v7.1/include -IC:/PROGRA~2/MICROS~1.0/VC/include -IC:/PROGRA~2/MI5E29~1/include -I$W/inc -DBOOST_MEM_FN_ENABLE_CDECL -DCPPU_ENV=msci -DENABLE_GRAPHITE -DENABLE_GTK -DINTEL -DM1500 -DMSC -DNOMINMAX -DOSL_DEBUG_LEVEL=1 -DPRODUCT -DSAL_LOG_INFO -DSAL_LOG_WARN -DSOLAR_JAVA -DSUPD=360 -DWIN32 -DWINVER=0x0500 -DWNT -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NON_CONFORMING_SWPRINTFS -D_CRT_SECURE_NO_DEPRECATE -D_DLL -D_MT -D_REENTRANT -D_WIN32_IE=0x0500 -D_X86_=1 $S/wizards/source/schedule/schedule.src -f - | awk -f C:/cygwin$S/solenv/gbuild/processdeps.awk -v OBJECTFILE=$W/SrsPartTarget/wizards/source/schedule/schedule.src -v OUTDIR=$O/ -v WORKDIR=$W/ -v SRCDIR=$S/ -v REPODIR=$R/ > $W/Dep/SrsPartTarget/wizards/source/schedule/schedule.src.d
awk: 致命的: ソースファイル `C:/cygwinc:/cygwin/home/mako/git/libo/solenv/gbuild/processdeps.awk' を読み込み用に開けません (No such file or directory)
make: *** [/home/mako/git/libo/workdir/wntmsci12.pro/SrsPartTarget/wizards/source/schedule/schedule.src] エラー 2

誰かが直してれるのを待つ(他力本願)

build error at extention

ここに記載しているメモは、 http://wiki.documentfoundation.org/User:Foral/Build_Win にまとめています。


Entering /home/mako/git/libo/sdext/source/minimizer/registry/data/org/openoffice/Office/extension

Entering /home/mako/git/libo/sdext/source/minimizer/registry/data/org/openoffice/Office

Entering /home/mako/git/libo/sdext/source/minimizer

cp description-en-US.txt ../../wntmsci12.pro/misc/PresentationMinimizer
cp ../../wntmsci12.pro/misc/PresentationMinimizer_in/description-*.txt ../../wntmsci12.pro/misc/PresentationMinimizer
cp: cannot stat `../../wntmsci12.pro/misc/PresentationMinimizer_in/description-*.txt': No such file or directory
dmake: Error code 1, while making '../../wntmsci12.pro/misc/PresentationMinimizer/description-en-US.txt'
dmake: '../../wntmsci12.pro/misc/PresentationMinimizer/description-en-US.txt' removed.
Retrying /home/mako/git/libo/sdext/source/minimizer

cp description-en-US.txt ../../wntmsci12.pro/misc/PresentationMinimizer
cp ../../wntmsci12.pro/misc/PresentationMinimizer_in/description-*.txt ../../wntmsci12.pro/misc/PresentationMinimizer
cp: cannot stat `../../wntmsci12.pro/misc/PresentationMinimizer_in/description-*.txt': No such file or directory
dmake: Error code 1, while making '../../wntmsci12.pro/misc/PresentationMinimizer/description-en-US.txt'
dmake: '../../wntmsci12.pro/misc/PresentationMinimizer/description-en-US.txt' removed.

                                                                                                                                            • -

Oh dear - something failed during the build - sorry !
For more help with debugging build errors, please see the section in:
http://wiki.documentfoundation.org/Development

internal build errors:

ERROR: error 65280 occurred while making /home/mako/git/libo/sdext/source/minimizer

it seems that the error is inside 'sdext', please re-run build
inside this module to isolate the error and/or test your fix:

                                                                                                                                            • -

I can not find localized description file... where can i get it? from pootle? or ....
umm....

現在、翻訳がないっぽいのでコピるか該当コードを削除するしかない。

build error at smoketestoo_native

ここに記載しているメモは、 http://wiki.documentfoundation.org/User:Foral/Build_Win にまとめています。

=============
(1/1) Building module smoketestoo_native
=============
Entering /home/mako/git/libo/smoketestoo_native/data

Entering /home/mako/git/libo/smoketestoo_native/com/sun/star/comp/smoketest

echo Manifest-Version: 1.0 > ../../../../../wntmsci12.pro/class/com_sun_star_comp_smoketest/META-INF/MANIFEST.MF
echo "Solar-Version: 350m1(Build:0)" >> ../../../../../wntmsci12.pro/class/com_sun_star_comp_smoketest/META-INF/MANIFEST.MF
cat ../../../../../wntmsci12.pro/misc/com_sun_star_comp_smoketest_MANIFEST.MF >> ../../../../../wntmsci12.pro/class/com_sun_star_comp_smoketest/META-INF/MANIFEST.MF
cd ../../../../../wntmsci12.pro/class/com_sun_star_comp_smoketest && zip -u -rX ../TestExtension.jar META-INF/MANIFEST.MF || ret=$?; if "$ret" != "12" && "$ret" != "1" ; then exit $ret ; fi && echo "Nothing to update for zip"
cd ../../../../../wntmsci12.pro/class && zip -u -rX TestExtension.jar . || ret=$?; if "$ret" != "12" && "$ret" != "1" ; then exit $ret ; fi && echo "Nothing to update for zip"
updating: META-INF/MANIFEST.MF (deflated 11%)
updating: com_sun_star_comp_smoketest/META-INF/ (stored 0%)
updating: com_sun_star_comp_smoketest/META-INF/MANIFEST.MF (deflated 11%)
cp ../../../../../wntmsci12.pro/class/TestExtension.jar ../../../../../wntmsci12.pro/misc/com_sun_star_comp_smoketest/TestExtension.jar
cd ../../../../../wntmsci12.pro/misc/com_sun_star_comp_smoketest && zip -r c:/cygwin/tmp/mk1weobm.TestExtension_.oxt * -x delzip -x "*CVS*" -x "*.svn*" || ret=$?; if "$ret" != "12" && "$ret" != "1" ; then exit $ret ; fi && echo "Nothing to update for zip"
if [ -f c:/cygwin/tmp/mk1weobm.TestExtension_.oxt ] ; then \
c:/cygwin/bin/perl -w c:/cygwin/home/mako/git/libo/solenv/bin/cleanzip.pl c:/cygwin/tmp/mk1weobm.TestExtension_.oxt \
; fi
cp c:/cygwin/tmp/mk1weobm.TestExtension_.oxt ../../../../../wntmsci12.pro/bin/TestExtension.oxt
/bin/rm -f c:/cygwin/tmp/mk1weobm.TestExtension_.oxt
Making: TestExtension.oxt
updating: META-INF/ (stored 0%)
updating: META-INF/manifest.xml (deflated 49%)
updating: TestExtension.jar (deflated 34%)
updating: TestExtension.rdb (deflated 90%)
dmake -P4 -f makefile.mk make_zip_deps=true ../../../../../wntmsci12.pro/misc/TestExtension.dpzz
cat ../../../../../wntmsci12.pro/misc/TestExtension.dpzz c:/cygwin/tmp/mk5uuf54 | grep -v "CVS" | grep -v "\.svn" >> ../../../../../wntmsci12.pro/misc/com_sun_star_comp_smoketest.dpz
Making: com_sun_star_comp_smoketest.dpz
mkdir.exe -p ../../../../../wntmsci12.pro/misc/com_sun_star_comp_smoketest
cd ../../../../../wntmsci12.pro/misc/com_sun_star_comp_smoketest && zipdep.pl -r -prefix ../../../../../wntmsci12.pro/misc/com_sun_star_comp_smoketest/ ../../../../../wntmsci12.pro/bin/TestExtension.oxt "*" -x "*CVS*" -x "*.svn*" >> C:/cygwin/home/mako/git/libo/smoketestoo_native/com/sun/star/comp/smoketest/../../../../../wntmsci12.pro/misc/TestExtension.dpzz

Entering /home/mako/git/libo/smoketestoo_native

ls: cannot access c:/cygwin/home/mako/git/libo/instsetoo_native/wntmsci12.pro/LibreOffice/archive/install/en-US/LibO_*_install-arc_en-US.zip: No such file or directory
dmake: Error code 2, while making 'Shell escape'
Retrying /home/mako/git/libo/smoketestoo_native

ls: cannot access c:/cygwin/home/mako/git/libo/instsetoo_native/wntmsci12.pro/LibreOffice/archive/install/en-US/LibO_*_install-arc_en-US.zip: No such file or directory
dmake: Error code 2, while making 'Shell escape'
Entering /home/mako/git/libo/smoketestoo_native

ls: cannot access c:/cygwin/home/mako/git/libo/instsetoo_native/wntmsci12.pro/LibreOffice/archive/install/en-US/LibO_*_install-arc_en-US.zip: No such file or directory
dmake: Error code 2, while making 'Shell escape'
Retrying /home/mako/git/libo/smoketestoo_native

ls: cannot access c:/cygwin/home/mako/git/libo/instsetoo_native/wntmsci12.pro/LibreOffice/archive/install/en-US/LibO_*_install-arc_en-US.zip: No such file or directory
dmake: Error code 2, while making 'Shell escape'

                                                                                                                                            • -

Oh dear - something failed during the build - sorry !
For more help with debugging build errors, please see the section in:
http://wiki.documentfoundation.org/Development

internal build errors:

ERROR: error 65280 occurred while making /home/mako/git/libo/smoketestoo_native

it seems that the error is inside '', please re-run build
inside this module to isolate the error and/or test your fix:

                                                                                                                                            • -

/usr/bin/sh
cd c:/cygwin/home/mako/git/libo
source ./Env.Host.sh
cd
rm -Rf c:/cygwin/home/mako/git/libo//wntmsci12.pro # optional module 'clean'
build

when the problem is isolated and fixed exit and re-run 'make' from the top-level
make: *** [dev-install] Error 1

cygpathを通していないのが問題に思うが時間がないので・・今度
ってか、smoketestはWinに対応していないってLibO Confで聞いたわな・・・

build error at cairo

ここに記載しているメモは、 http://wiki.documentfoundation.org/User:Foral/Build_Win にまとめています。

OSL_TRACE("\r\n:cairocanvas::TextLayout::draw(S,O,p,v,r): Size:(%d,%d), W:%d->%d, Pos (%d,%d), G(%d,%d,%d) %s%s%s%s || Name:%s - %s",
          aFont.GetWidth(),
          aFont.GetHeight(),
          aMetric.GetWidth(),
          nWidth,
          (int) rOutpos.X(),
          (int) rOutpos.Y(),
          cairo_glyphs[0].index, cairo_glyphs[1].index, cairo_glyphs[2].index,
          maLogicalAdvancements.getLength() ? "ADV " : "",
          rSysFontData.bAntialias ? "AA " : "",
          rSysFontData.bFakeBold ? "FB " : "",
          rSysFontData.bFakeItalic ? "FI " : "",
#if (defined CAIRO_HAS_WIN32_SURFACE) && (OSL_DEBUG_LEVEL > 1)
          ::rtl::OUStringToOString( reinterpret_cast<const sal_Unicode*> (logfont.lfFaceName), RTL_TEXTENCODING_UTF8 ).getStr(),
#else
          ::rtl::OUStringToOString( aFont.GetName(), RTL_TEXTENCODING_UTF8 ).getStr(),
#endif
          ::rtl::OUStringToOString( maText.Text.copy( maText.StartPosition, maText.Length ),
RTL_TEXTENCODING_UTF8 ).getStr()
    );

/canvas/source/cairo/cairo_textlayout.cxx(600) : error C2121: ´#´ : invalid character : possibly the result of a macro expansion
/canvas/source/cairo/cairo_textlayout.cxx(600) : error C2059: syntax error : ´if´
/canvas/source/cairo/cairo_textlayout.cxx(600) : error C2121: ´#´ : invalid character : possibly the result of a macro expansion
/canvas/source/cairo/cairo_textlayout.cxx(600) : error C2121: ´#´ : invalid character : possibly the result of a macro expansion
/canvas/source/cairo/cairo_textlayout.cxx(600) : error C2653: ´endif´ : is not a class or namespace name

プリプロセッサーの仕様の違いなのか、vsだと上記のエラーが発生する。();の中の#ifを();の外で分岐させると問題なくコンパイルできる。どう対処するのが一番良いのだろう?

It is possible to solve but i do not know right way.

csc.exeのチェックでNoになる件

    dnl Check csc.exe
    AC_PATH_PROG(CSC_PATH, csc.exe)
    if test -n "$CSC_PATH";then
        CSC_PATH=`dirname "$CSC_PATH"`
    fi
    if test -n "$with_csc_path";then
        with_csc_path=`cygpath -u "$with_csc_path"`
    fi
    if test -x "$with_csc_path/csc.exe"; then
        CSC_PATH="$with_csc_path"
    else
       csctest=`./oowintool --csc-compilerdir`;
       if test -x "$csctest/csc.exe"; then
           CSC_PATH="$csctest"
       fi
    fi
    if test ! -x "$CSC_PATH/csc.exe"; then
        AC_MSG_ERROR([csc.exe not found. Make sure it's in the path or use --with-csc-path])
    fi
    # Convert to posix path with 8.3 filename restrictions ( No spaces )
    CSC_PATH=`cygpath -d "$CSC_PATH"`
    CSC_PATH=`cygpath -u "$CSC_PATH"`

csc.exeのチェックがnoになるのが気になったので少し見てみてみたけど。AC_PATH_PROG(CSC_PATH, csc.exe)でnoが返ってる。

ビルドエラーxmlreader

ここに記載しているメモは、 http://wiki.documentfoundation.org/User:Foral/Build_Win にまとめています。

cd .. && /opt/lo/bin/make -r -j1 gb_PARTIALBUILD=T
[ build CXX ] xmlreader/source/span
R=c:/cygwin/home/mako/git && O=$R/libo/solver/wntmsci12.pro && W=$R/libo/workdir/wntmsci12.pro && S=$R/libo && mkdir -p $W/CxxObject/xmlreader/source/ $W/Dep/CxxObject/xmlreader/source/ && /cygdrive/c/PROGRA~2/MICROS~1.0/VC/bin/cl.exe -DBOOST_MEM_FN_ENABLE_CDECL -DCPPU_ENV=msci -DENABLE_GRAPHITE -DENABLE_GTK -DENABLE_LAYOUT=0 -DENABLE_LAYOUT_EXPERIMENTAL=0 -DINTEL -DM1500 -DMSC -DNT351 -DOSL_DEBUG_LEVEL=1 -DPRODUCT -DSOLAR_JAVA -DSUPD=350 -DVCL -DWIN32 -DWINVER=0x0500 -DWNT -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NON_CONFORMING_SWPRINTFS -D_CRT_SECURE_NO_DEPRECATE -D_DLL -D_MT -D_REENTRANT -D_WIN32_IE=0x0500 -D_X86_=1 -D_DLL -DOOO_DLLIMPLEMENTATION_XMLREADER -Gd -GR -Gs -GS -Gy -MD -nologo -Wall -wd4005 -wd4061 -wd4127 -wd4180 -wd4189 -wd4191 -wd4217 -wd4242 -wd4244 -wd4245 -wd4250 -wd4251 -wd4275 -wd4290 -wd4294 -wd4350 -wd4355 -wd4365 -wd4503 -wd4505 -wd4511 -wd4512 -wd4514 -wd4555 -wd4611 -wd4619 -wd4625 -wd4626 -wd4640 -wd4668 -wd4675 -wd4686 -wd4692 -wd4706 -wd4710 -wd4711 -wd4373 -wd4738 -wd4786 -wd4800 -wd4820 -wd4826 -wd4917 -wd4996 -Zc:forScope,wchar_t- -Zm500 -Zi -DEXCEPTIONS_ON -EHa -Fd -showIncludes -I$S/xmlreader/source -IC:/cygwin$O/inc/stl -IC:/cygwin$O/inc/external -IC:/cygwin$O/inc -IC:/cygwin$O/include -IC:/cygwin$S/solenv/wntmsci12/inc -IC:/cygwin$S/solenv/inc -IC:/cygwin$S/res -IC:/PROGRA~1/Java/JDK16~1.0_2/include/win32 -IC:/PROGRA~1/Java/JDK16~1.0_2/include -IC:/PROGRA~1/MICROS~4/Windows/v7.1/include -IC:/PROGRA~2/MICROS~1.0/VC/include -I/include -I$O/inc/offapi -I$O/inc/udkapi -c $S/xmlreader/source/span.cxx -Fo$W/CxxObject/xmlreader/source/span.o | C:/cygwin/home/mako/git/libo/solenv/gbuild/filter-showIncludes.pl /home/mako/git/libo/workdir/wntmsci12.pro/Dep/CxxObject/xmlreader/source/span.d /home/mako/git/libo/workdir/wntmsci12.pro/CxxObject/xmlreader/source/span.o /home/mako/git/libo/xmlreader/source/span.cxx; exit ${PIPESTATUS[0]}
c:/cygwin/home/mako/git/libo/xmlreader/source/span.cxx(29) : fatal error C1083: include ▒t▒@▒C▒▒▒▒▒J▒▒▒܂▒▒▒B'sal/config.h': No such file or directory
make: *** No rule to make target `/home/mako/git/libo/workdir/wntmsci12.pro/CxxObject/xmlreader/source/span.o', needed by `/home/mako/git/libo/workdir/wntmsci12.pro/LinkTarget/Library/ixmlreader.lib'. Stop.
dmake: Error code 2, while making 'all'

sal/config.hが見つからないというエラー

R=c:/cygwin/home/mako/git
O=$R/libo/solver/wntmsci12.pro
W=$R/libo/workdir/wntmsci12.pro
S=$R/libo

上記が明らかに悪さしている。git\libo\solenv\gbuild\platform\windows.mkで生成している文である。

R=$(gb_Helper_REPODIR_NATIVE)
$(subst $(REPODIR)/,$$R/,$(subst $(gb_Helper_REPODIR_NATIVE)/,$$R/,O=$(gb_Helper_OUTDIR_NATIVE)
W=$(gb_Helper_WORKDIR_NATIVE)
S=$(gb_Helper_SRCDIR_NATIVE)))
\
$(subst $(REPODIR)/,$$R/,$(subst $(SRCDIR)/,$$S/,$(subst $(OUTDIR)/,$$O/,$(subst $(WORKDIR)/,$$W/,$(subst $(gb_Helper_REPODIR_NATIVE)/,$$R/,$(subst $(gb_Helper_SRCDIR_NATIVE)/,$$S/,$(subst $(gb_Helper_OUTDIR_NATIVE)/,$$O/,$(subst $(gb_Helper_WORKDIR_NATIVE)/,$$W/,$(1)))))))))

結局環境設定ファイルでC:/を小文字にして対処した。
上記部分の置換で大文字、小文字が揃っていないと置換が意図通りに動かないってのが問題っぽい。

ってかほかの人は出ないのかな・・・この問題・・・