On Sat, 14 Mar 2009 12:10:02 +0100 Paul Floyd <paulf at free.fr> wrote:
> Hi > > After a long pause in lurk mode, I'm having another go at building > KDE. > > Solaris 10, Studio 12, all patched. > > Stright off I see: > > ! msgfmt is not GNU msgfmt; make sure GNU msgfmt > ! is in your path and can be called as "msgfmt" > ! System will probably not compile properly. > ! hit ^C now to abort compilation. > > Can I ignore this? Hi Paul, I do not really know if there is a correct way of doing stuff on Solaris 10 or not. This is what I do though: I hacked together the following SUNWgnu-gettext.spec file, and built it in a spec files extra build environment. Then I use the built /usr/gnu/bin/msgfmt. Whether that helps with KDE or not I do not know. It does help with building JDS gnome 2.24 on Solaris 10. # # spec file for package SUNWgnu-gettext # # includes module(s): GNU gettext # %include Solaris.inc %define _prefix /usr Name: SUNWgnu-gettext Summary: GNU gettext Version: 0.16.1 Source: ftp://ftp.gnu.org/pub/gnu/gettext/gettext-%{version}.tar.gz Patch1: gettext-01-configure.diff SUNW_BaseDir: %{_basedir} BuildRoot: %{_tmppath}/%{name}-%{version}-build %include default-depend.inc %package devel Summary: %{summary} - developer files SUNW_BaseDir: %{_basedir} %include default-depend.inc Requires: %name %if %build_l10n %package l10n Summary: %{summary} - l10n files SUNW_BaseDir: %{_basedir} %include default-depend.inc Requires: %{name} %endif %prep %setup -q -c -n %name-%version %patch1 -p0 %ifarch amd64 sparcv9 cp -pr gettext-%{version} gettext-%{version}-64 %endif %build CPUS=`/usr/sbin/psrinfo | grep on-line | wc -l | tr -d ' '` if test "x$CPUS" = "x" -o $CPUS = 0; then CPUS=1 fi export CFLAGS32="%optflags" export CFLAGS64="%optflags64" export CXXFLAGS32="%cxx_optflags" export CXXFLAGS64="%cxx_optflags64" %ifarch amd64 sparcv9 export CC=${CC64:-$CC} export CXX=${CXX64:-$CXX} export CFLAGS="$CFLAGS64" export CXXFLAGS="$CXXFLAGS64" cd gettext-%{version}-64 ./configure --prefix=%{_prefix} \ --bindir=%{_bindir}/%{_arch64} \ --libdir=%{_libdir}/%{_arch64} \ --mandir=%{_mandir} \ --infodir=%{_infodir} \ --disable-java --disable-csharp --disable-libasprintf \ --without-emacs \ --disable-openmp --disable-static --disable-shared \ --program-transform-name='s/^gettext$/g&/;s/^msgfmt$/g&/;s/^xgettext$/g&/' \ --disable-csharp \ --without-libiconv-prefix --without-libintl-prefix make -j$CPUS cd .. %endif cd gettext-%{version} export CC=${CC32:-$CC} export CXX=${CXX32:-$CXX} export CFLAGS="$CFLAGS32" export CXXFLAGS="$CXXFLAGS32" ./configure --prefix=%{_prefix} \ --bindir=%{_bindir} \ --libdir=%{_libdir} \ --mandir=%{_mandir} \ --infodir=%{_infodir} \ --disable-java --disable-csharp --disable-libasprintf \ --without-emacs \ --disable-openmp --disable-static --disable-shared \ --program-transform-name='s/^gettext$/g&/;s/^msgfmt$/g&/;s/^xgettext$/g&/' \ --disable-csharp \ --without-libiconv-prefix --without-libintl-prefix make -j$CPUS %install rm -rf $RPM_BUILD_ROOT %ifarch amd64 sparcv9 cd gettext-%{version}-64 make install DESTDIR=$RPM_BUILD_ROOT cd .. cd $RPM_BUILD_ROOT%{_prefix} mkdir -p gnu/bin/%{_arch64} cd - cd $RPM_BUILD_ROOT%{_prefix}/gnu/bin/%{_arch64} ln -s ../../../bin/%{_arch64}/ggettext gettext ln -s ../../../bin/%{_arch64}/gmsgfmt msgfmt ln -s ../../../bin/%{_arch64}/gxgettext xgettext cd - cd $RPM_BUILD_ROOT%{_prefix} rm -f $RPM_BUILD_ROOT/%{_libdir}/%{_arch64}/*.la rm -f $RPM_BUILD_ROOT/%{_libdir}/%{_arch64}/*.a rm $RPM_BUILD_ROOT%{_libdir}/%{_arch64}/charset.alias cd - rm -f $RPM_BUILD_ROOT%{_bindir}/%{_arch64}/autopoint rm -f $RPM_BUILD_ROOT%{_bindir}/%{_arch64}/gettext.sh rm -f $RPM_BUILD_ROOT%{_bindir}/%{_arch64}/gettextize rm -f $RPM_BUILD_ROOT%{_bindir}/%{_arch64}/recode-sr-latin %endif cd gettext-%{version} make install DESTDIR=$RPM_BUILD_ROOT cd $RPM_BUILD_ROOT%{_prefix} mkdir -p gnu/bin cd - cd $RPM_BUILD_ROOT%{_prefix}/gnu/bin ln -s ../../bin/ggettext gettext ln -s ../../bin/gmsgfmt msgfmt ln -s ../../bin/gxgettext xgettext cd - cd $RPM_BUILD_ROOT%{_prefix} mkdir -p gnu/share/man/man1 cd $RPM_BUILD_ROOT%{_prefix}/gnu/share/man/man1 ln -s ../../../../share/man/man1/ggettext.1 gettext.1 ln -s ../../../../share/man/man1/gmsgfmt.1 msgfmt.1 ln -s ../../../../share/man/man1/gxgettext.1 xgettext.1 cd - cd $RPM_BUILD_ROOT%{_prefix} cd - rm -f $RPM_BUILD_ROOT%{_bindir}/autopoint rm -f $RPM_BUILD_ROOT%{_bindir}/gettext.sh rm -f $RPM_BUILD_ROOT%{_bindir}/gettextize rm -f $RPM_BUILD_ROOT%{_bindir}/recode-sr-latin rm -rf $RPM_BUILD_ROOT%{_infodir} rm $RPM_BUILD_ROOT%{_libdir}/charset.alias %if %build_l10n %else # REMOVE l10n FILES rm -rf $RPM_BUILD_ROOT%{_datadir}/locale %endif rm -f $RPM_BUILD_ROOT%{_libdir}/lib*.la rm -f $RPM_BUILD_ROOT%{_libdir}/lib*.a # SUNWgnome-common-devel supplies the gettext documentation. rm -rf $RPM_BUILD_ROOT%{_datadir}/doc cd $RPM_BUILD_ROOT%{_datadir} %clean rm -rf $RPM_BUILD_ROOT %files %defattr (-, root, bin) %dir %attr (0755, root, bin) %{_bindir} %{_bindir}/envsubst %{_bindir}/ggettext %{_bindir}/gmsgfmt %{_bindir}/gxgettext %{_bindir}/msgattrib %{_bindir}/msgcat %{_bindir}/msgcmp %{_bindir}/msgcomm %{_bindir}/msgconv %{_bindir}/msgen %{_bindir}/msgexec %{_bindir}/msgfilter %{_bindir}/msggrep %{_bindir}/msginit %{_bindir}/msgmerge %{_bindir}/msgunfmt %{_bindir}/msguniq %{_bindir}/ngettext %dir %attr (0755, root, bin) /usr/gnu %dir %attr (0755, root, bin) /usr/gnu/bin /usr/gnu/bin/gettext /usr/gnu/bin/msgfmt /usr/gnu/bin/xgettext %dir %attr (0755, root, bin) %{_libdir} %dir %attr (0755, root, bin) %{_libdir}/gettext %{_libdir}/gettext/* %dir %attr (0755, root, sys) %{_datadir} %dir %attr (0755, root, bin) %{_datadir}/gettext %{_datadir}/gettext/* %dir %attr (0755, root, bin) %{_mandir} %dir %attr (0755, root, bin) %{_mandir}/man1 %{_mandir}/man1/*.1 %dir %attr (0755, root, bin) %{_mandir}/man3 %{_mandir}/man3/*.3 %dir %attr (0755, root, sys) /usr/gnu/share %dir %attr (0755, root, bin) /usr/gnu/share/man %dir %attr (0755, root, bin) /usr/gnu/share/man/man1 /usr/gnu/share/man/man1/*.1 %ifarch amd64 sparcv9 %dir %attr (0755, root, bin) %{_bindir}/%{_arch64} %{_bindir}/%{_arch64}/envsubst %{_bindir}/%{_arch64}/ggettext %{_bindir}/%{_arch64}/gmsgfmt %{_bindir}/%{_arch64}/gxgettext %{_bindir}/%{_arch64}/msgattrib %{_bindir}/%{_arch64}/msgcat %{_bindir}/%{_arch64}/msgcmp %{_bindir}/%{_arch64}/msgcomm %{_bindir}/%{_arch64}/msgconv %{_bindir}/%{_arch64}/msgen %{_bindir}/%{_arch64}/msgexec %{_bindir}/%{_arch64}/msgfilter %{_bindir}/%{_arch64}/msggrep %{_bindir}/%{_arch64}/msginit %{_bindir}/%{_arch64}/msgmerge %{_bindir}/%{_arch64}/msgunfmt %{_bindir}/%{_arch64}/msguniq %{_bindir}/%{_arch64}/ngettext %dir %attr (0755, root, bin) /usr/gnu/bin/%{_arch64} /usr/gnu/bin/%{_arch64}/gettext /usr/gnu/bin/%{_arch64}/msgfmt /usr/gnu/bin/%{_arch64}/xgettext %dir %attr (0755, root, bin) %{_libdir}/%{_arch64} %dir %attr (0755, root, bin) %{_libdir}/%{_arch64}/gettext %{_libdir}/%{_arch64}/gettext/* %endif %defattr (-, root, other) %files devel %defattr (-, root, bin) %dir %attr (0755, root, bin) %{_includedir} %{_includedir}/* %dir %attr (0755, root, sys) %{_datadir} %dir %attr (0755, root, other) %{_datadir}/aclocal %{_datadir}/aclocal/* %if %build_l10n %files l10n %defattr (-, root, bin) %dir %attr (0755, root, sys) %{_datadir} %attr (-, root, other) %{_datadir}/locale %endif %changelog * Wed Oct 2 2008 - markwright at internode.on.net - Build without gnu libiconv on Solaris 10. Try to build - it like it is supplied on SXCE b98. * Fri Sep 28 2007 - laca at sun.com - fix %install and %files * Fri Apr 20 2007 - Doug Scott <dougs at truemail.co.th> - Fixed %{_datadir}/doc group * Fri Apr 20 2007 - Doug Scott <dougs at truemail.co.th> - Removed gettext.info autosprintf.info - conflicts with SUNWgnome-common-devel - Removed charset.alias - conficts with SFEcoreutils * Sun Mar 7 2007 - Doug Scott <dougs at truemail.co.th> - Initial spec > and > > NOTE: Couldn't lock the package database. > [a few times] > > Do I need to build as root (or with the right profile)? I do not know, I get this error message every time I run pkgtool, I just ignore it and it seems to build stuff. > Lastly, in the Qt spec file I see > > %include depend-packages.inc > > # TODO: Update to 4.4.5 :) > %define src_name qt > %define src_ver 4.4.1 > > Isn't 4.4.3 the latest 4.4 version, and 4.5.0 that latest of all? As > for 4.5.0, I'd wait for 4.5.1 for some of the GCCisms to be fixed. > > Cheers > Paul I'm interested in Qt 4.5.0, it would be be neat if it could be compiled with Sun Studio 12. Thanks, Mark --
