man directory change (and other macro rewrites)
by Farkas Levente
hi,
while i try to rebuild mingw32-libxml2 i've got this error:
-------------------------------------------------------
Checking for unpackaged file(s): /usr/lib/rpm/check-files
/var/tmp/mingw32-libxml2-2.7.2-3-root-lfarkas
error: Installed (but unpackaged) file(s) found:
/usr/i686-pc-mingw32/sys-root/mingw/man/man1/xml2-config.1
/usr/i686-pc-mingw32/sys-root/mingw/man/man1/xmlcatalog.1
/usr/i686-pc-mingw32/sys-root/mingw/man/man1/xmllint.1
/usr/i686-pc-mingw32/sys-root/mingw/man/man3/libxml.3
RPM build errors:
File listed twice:
/usr/i686-pc-mingw32/sys-root/mingw/lib/pkgconfig/libxml-2.0.pc
Installed (but unpackaged) file(s) found:
/usr/i686-pc-mingw32/sys-root/mingw/man/man1/xml2-config.1
/usr/i686-pc-mingw32/sys-root/mingw/man/man1/xmlcatalog.1
/usr/i686-pc-mingw32/sys-root/mingw/man/man1/xmllint.1
/usr/i686-pc-mingw32/sys-root/mingw/man/man3/libxml.3
-------------------------------------------------------
this's because on fedora man pages in /usr/share/man while on
rhel/centos (and older fedora releases) it was under /usr/man.
of course since we delete all man and info pages i can simple delete
these directories too. but the question why this happened? because it's
hardcoded into mingw32-filesystem's /etc/rpm/macros.mingw32.
wouldn't be these macros:
-------------------------------------------------------
%_mingw32_sysroot %{_prefix}/i686-pc-mingw32/sys-root
%_mingw32_prefix %{_mingw32_sysroot}/mingw
%_mingw32_bindir %{_mingw32_prefix}/bin
%_mingw32_sbindir %{_mingw32_prefix}/sbin
%_mingw32_libdir %{_mingw32_prefix}/lib
%_mingw32_libexecdir %{_mingw32_prefix}/libexec
%_mingw32_datadir %{_mingw32_prefix}/share
%_mingw32_docdir %{_mingw32_prefix}/share/doc
%_mingw32_infodir %{_mingw32_prefix}/share/info
%_mingw32_mandir %{_mingw32_prefix}/share/man
%_mingw32_sysconfdir %{_mingw32_prefix}/etc
%_mingw32_includedir %{_mingw32_prefix}/include
-------------------------------------------------------
rewritten to something like this:
%_mingw32_mandir %{_mingw32_prefix}%_mandir
etc.
--
Levente "Si vis pacem para bellum!"
15 years, 4 months
EPEL build status
by Farkas Levente
hi,
today i spend too much time (~15 hours) to build mingw packages on
centos-5:-( but here is a short result and may be sometime in this week
i try to solve the remaining problems too and submit patches to the
review requests.
SUBMITTED FOR EPEL:
mingw32-filesystem-34-1.el5
mingw32-binutils-2.18.50_20080109_2-8.el5
BUILD FOR EPEL:
from modified spec file:
mingw32-filesystem-34-2.el5
mingw32-libxml2-2.7.2-4.fc9.src.rpm
from original src.rpm:
mingw32-atk-1.24.0-2.fc9.src.rpm
mingw32-boost-1.34.1-2.fc9.src.rpm
mingw32-bzip2-1.0.5-3.fc9.src.rpm
mingw32-cairo-1.8.0-2.fc9.src.rpm
mingw32-cairomm-1.6.2-2.fc9.src.rpm
mingw32-expat-2.0.1-1.fc9.src.rpm
mingw32-freetype-2.3.7-5.fc9.src.rpm
mingw32-fontconfig-2.6.0-5.fc9.src.rpm
mingw32-gcc-4.3.2-8.fc9.src.rpm
mingw32-gettext-0.17-6.fc9.src.rpm
mingw32-gdbm-1.8.0-1.fc9.src.rpm
mingw32-glib2-2.18.1-2.fc9.src.rpm
mingw32-glibmm24-2.18.1-2.fc9.src.rpm
mingw32-gsl-1.11-1.fc9.src.rpm
mingw32-gtk2-2.14.4-3.fc9.src.rpm
mingw32-gtkmm24-2.14.1-1.fc9.src.rpm
mingw32-iconv-1.12-5.fc9.src.rpm
mingw32-jasper-1.900.1-5.fc9.src.rpm
mingw32-libgcrypt-1.4.3-2.fc9.src.rpm
mingw32-libgpg-error-1.6-8.fc9.src.rpm
mingw32-libjpeg-6b-5.fc9.src.rpm
mingw32-libpng-1.2.31-5.fc9.src.rpm
mingw32-libsigc++20-2.2.2-1.fc9.src.rpm
mingw32-nsis-2.39-5.fc9.src.rpm
mingw32-nsiswrapper-3-2.fc9.src.rpm
mingw32-openssl-0.9.8g-1.fc9.src.rpm
mingw32-pango-1.22.1-1.fc9.src.rpm
mingw32-pangomm-2.14.0-2.fc9.src.rpm
mingw32-pixman-0.12.0-2.fc9.src.rpm
mingw32-pdcurses-3.4-1.fc9.src.rpm
mingw32-poco-1.3.3p1-1.fc9.src.rpm
mingw32-popt-1.13_cvs20081025-1.fc9.src.rpm
mingw32-portablexdr-4.0.11-1.fc9.src.rpm
mingw32-pthreads-2.8.0-2.fc9.src.rpm
mingw32-termcap-1.3.1-3.fc9.src.rpm
mingw32-readline-5.2-2.fc9.src.rpm
mingw32-runtime-bootstrap-1-4.fc9.src.rpm
mingw32-SDL-1.2.13-2.fc9.src.rpm
mingw32-sqlite-3.5.9-2.fc9.src.rpm
mingw32-w32api-bootstrap-1-4.fc9.src.rpm
mingw32-w32api-3.12-1.fc9.src.rpm
mingw32-zlib-1.2.3-9.fc9.src.rpm
CAN'T BUILD FOR EPEL:
mingw32-dbus-1.2.4-0.1.20081031svn.fc9.src.rpm
mingw32-gc-7.1-1.fc9.src.rpm
mingw32-gnutls-2.4.2-2.fc9.src.rpm
mingw32-gtk-vnc-0.3.8-0.2.20081030hg.fc9.src.rpm
mingw32-inkscape-20081027-5.fc9.src.rpm
mingw32-libvirt-0.4.6-8.fc9.src.rpm
mingw32-libxslt-1.1.24-2.fc9.src.rpm
mingw32-runtime-3.15.1-1.fc9.src.rpm
WAITING FOR BUILD FOR EPEL:
mingw32-gtk+-1.2.10-66
--
Levente "Si vis pacem para bellum!"
15 years, 4 months
C++, exceptions, SJLJ, Dwarf2
by Richard W.M. Jones
Anyone got any idea about this?
http://www.reddit.com/r/programming/comments/7cbjv/windows_cross_compiler...
One question, for C++ do you use SJLJ or Dwarf2 exceptions? I have
switched the compiler to DW2 recently.
Also, one pitfall that has hit us, and that you need to avoid, is the
inability for C++ exceptions to cross DLL boundaries. You need to
provide support for that from the ground up, before you get too loaded
down with DLL's which can't support exceptions.
Here [http://inkscape.modevia.com/] is the stuff we use daily. The
compilers and "lib bundles" are located in win32libs.
Rich.
--
Richard Jones, Emerging Technologies, Red Hat http://et.redhat.com/~rjones
Read my OCaml programming blog: http://camltastic.blogspot.com/
Fedora now supports 68 OCaml packages (the OPEN alternative to F#)
http://cocan.org/getting_started_with_ocaml_on_red_hat_and_fedora
15 years, 4 months
Apparently I wasn't subscribed ...
by Richard W.M. Jones
I thought this list was 'a bit quiet'. Turns out that although I am
an administrator of the list, I hadn't been subscribed to the list ...
I'll try and reply to emails that I find in the archive now - my
apologies that the replies won't be threaded correctly.
Rich.
--
Richard Jones, Emerging Technologies, Red Hat http://et.redhat.com/~rjones
virt-top is 'top' for virtual machines. Tiny program with many
powerful monitoring features, net stats, disk stats, logging, etc.
http://et.redhat.com/~rjones/virt-top
15 years, 4 months
Re: std library - poco compilation problem mingw - fedora10
by Richard W.M. Jones
In response to:
http://lists.fedoraproject.org/pipermail/fedora-mingw/2008-November/00001...
> b) poco is already prepared for cross-compilation to mingw (under
> cygwin)
MinGW and Cygwin are wholly separate and different things. Do not
confuse them.
MinGW is just a compiler and some Win32 header files. Cross-
compilation using MinGW (which is what the Fedora MinGW project is all
about) uses Win32 API calls, and so Unix programs require significant
porting efforts to work. eg. If your Unix program calls 'fork(2)',
then forget it - it's never going to work under Win32 API until that
dependency is removed or replaced.
Cygwin is, essentially, a Unix emulator for Windows. Unix programs
can usually be compiled directly for Cygwin with no changes, because
Cygwin offers the familiar Unix/POSIX API to programs (by emulating it
at great cost, including features like 'fork' which are not found on
Windows and expensive to emulate).
Cygwin has fatal licensing problems which prevent commercial use,
apart from being inefficient, which is why we didn't go that route.
So back to your program ...
> i686-pc-mingw32-g++ -Iinclude
> -I/home/andrzej/poco/poco-1.3.3p1/CppUnit/include
> -I/home/andrzej/poco/poco-1.3.3p1/Foundation/include
> -I/home/andrzej/poco/poco-1.3.3p1/XML/include
> -I/home/andrzej/poco/poco-1.3.3p1/Util/include
> -I/home/andrzej/poco/poco-1.3.3p1/Net/include -DPOCO_BUILD_HOST=linx
> -v -mno-cygwin -D_WIN32 -DMINGW32 -DWINVER=0x500
> -DPOCO_NO_FPENVIRONMENT -DPCRE_STATIC -DPOCO_THREAD_STACK_SIZE
> -DFoundation_Config_INCLUDED -I/usr/local/include -I/usr/include
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
This is your problem - the cross-compilers that we ship are configured
so they never look in /usr/include or /usr/local/include. Header
files in /usr/include are for the build system (Fedora), and are wrong
for the host system (Windows). If you specifically add /usr/include
and /usr/local/include back in, then you'll pick up the wrong headers,
and anything can go wrong from there.
I gather that you didn't write Poco's build system, but you need to go
back and find out why it's including this. Probably (as demonstrated
by the MinGW / Cygwin confusion above), Poco either hasn't been ported
to MinGW, or needs some different options to compile under a true
MinGW cross-compiler.
If that doesn't help, try reading my porting notes:
http://camltastic.blogspot.com/2008/10/mingw-compile-software-for-windows...
(or maybe I'd better say, read them again, because I see you put a
comment there already).
Rich.
--
Richard Jones, Emerging Technologies, Red Hat http://et.redhat.com/~rjones
Read my OCaml programming blog: http://camltastic.blogspot.com/
Fedora now supports 68 OCaml packages (the OPEN alternative to F#)
http://cocan.org/getting_started_with_ocaml_on_red_hat_and_fedora
15 years, 4 months