[Monodevelop-devel] attempting git source compile of monodevelop (master)

Michael Hutchinson m.j.hutchinson at gmail.com
Wed Jan 9 16:33:55 UTC 2013


I think this has something do do with the compiler name changes, i.e. "mcs"
is no longer the 1.0 framework's compiler, it can compile for any framework
and defaults to 4.5. This means you're building gnome# with the 4.5
framework, when it expects to be built with the 1.0 framework. And somehow
it's using the 2.0 Mono.Cairo too. Maybe ART# got compiled against the
system GTK# and GNOME# is compiling against the locally built GTK#.

Not sure why that would fail in this way though.


On 31 December 2012 10:19, Jeremy Reeve <jezz at kamelio.co.uk> wrote:

>
> Hi there,
>
> I'm trying to compile monodevelop (master) on my Fedora 17 system.  I
> would like to try out the F# support and from what I can gather, that is
> best done with mono/monodevelop 3+
>
> I've compiled the entire mono stack locally which consists of:
>
> mono        (master)
> fsharp      (master)
> gtk-sharp   (gtk-sharp-2-12-branch)   <== not sure this is correct...
> gnome-sharp (master)
> monodevelop (master)
>
> Configuring gnome-sharp:
>
> [jsr at hermes gnome-sharp]$ ./bootstrap-2.24 --prefix=/home/jsr/local
> + sed -e s/@GNOME_SHARP_VERSION@/2.24.2/ -e
> s/@GTK_REQUIRED_VERSION@/2.13.0/ -e
> s/@GTK_SHARP_REQUIRED_VERSION@/2.12.2/ -e
> s/@GNOME_REQUIRED_VERSION@/2.23.0/ -e
> s/@GNOMECANVAS_REQUIRED_VERSION@/2.20.0/ -e
> 's/@VERSIONCSDEFINES@/-define:GTK_SHARP_2_6 -define:GTK_SHARP_2_8
> -define:GNOME_SHARP_2_16 -define:GNOME_SHARP_2_20
> -define:GNOME_SHARP_2_24/' -e 's/@VERSIONCFLAGS@/-DGTK_SHARP_2_6
> -DGTK_SHARP_2_8 -DGNOME_SHARP_2_16 -DGNOME_SHARP_2_20
> -DGNOME_SHARP_2_24/' -e 's/@POLICY_VERSIONS@/2.4 2.6 2.8 2.16 2.20/' -e
> s/@ASSEMBLY_VERSION@/2.24.0.0/ ./configure.in.in
> Running libtoolize...
> libtoolize: putting auxiliary files in `.'.
> libtoolize: copying file `./ltmain.sh'
> libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.in
> and
> libtoolize: rerunning libtoolize, to keep the correct libtool macros
> in-tree.
> libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
> Running aclocal  ...
> Running autoheader...
> Running automake --foreign  ...
> Running autoconf ...
> Running ./configure --enable-maintainer-mode --enable-compile-warnings
> --prefix=/home/jsr/local ...
> configure: WARNING: unrecognized options: --enable-compile-warnings
> checking build system type... x86_64-unknown-linux-gnu
> checking host system type... x86_64-unknown-linux-gnu
> checking target system type... x86_64-unknown-linux-gnu
> checking for a BSD-compatible install... /usr/bin/install -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
> checking for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking whether to enable maintainer-specific portions of Makefiles...
> yes
> checking for gcc... gcc
> checking for gcc... (cached) gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables...
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking for style of include used by make... GNU
> checking dependency style of gcc... gcc3
> checking for gcc... (cached) gcc
> checking whether we are using the GNU C compiler... (cached) yes
> checking whether gcc accepts -g... (cached) yes
> checking for gcc option to accept ISO C89... (cached) none needed
> checking dependency style of gcc... (cached) gcc3
> checking how to run the C preprocessor... gcc -E
> checking for grep that handles long lines and -e... /usr/bin/grep
> checking for egrep... /usr/bin/grep -E
> checking for ANSI C header files... yes
> checking how to print strings... printf
> checking for a sed that does not truncate output... /usr/bin/sed
> checking for fgrep... /usr/bin/grep -F
> checking for ld used by gcc... /usr/bin/ld
> checking if the linker (/usr/bin/ld) is GNU ld... yes
> checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
> checking the name lister (/usr/bin/nm -B) interface... BSD nm
> checking whether ln -s works... yes
> checking the maximum length of command line arguments... 1572864
> checking whether the shell understands some XSI constructs... yes
> checking whether the shell understands "+="... yes
> checking how to convert x86_64-unknown-linux-gnu file names to
> x86_64-unknown-linux-gnu format... func_convert_file_noop
> checking how to convert x86_64-unknown-linux-gnu file names to toolchain
> format... func_convert_file_noop
> checking for /usr/bin/ld option to reload object files... -r
> checking for objdump... objdump
> checking how to recognize dependent libraries... pass_all
> checking for dlltool... dlltool
> checking how to associate runtime and link libraries... printf %s\n
> checking for ar... ar
> checking for archiver @FILE support... @
> checking for strip... strip
> checking for ranlib... ranlib
> checking command to parse /usr/bin/nm -B output from gcc object... ok
> checking for sysroot... no
> checking for mt... no
> checking if : is a manifest tool... no
> checking for sys/types.h... yes
> checking for sys/stat.h... yes
> checking for stdlib.h... yes
> checking for string.h... yes
> checking for memory.h... yes
> checking for strings.h... yes
> checking for inttypes.h... yes
> checking for stdint.h... yes
> checking for unistd.h... yes
> checking for dlfcn.h... yes
> checking for objdir... .libs
> checking if gcc supports -fno-rtti -fno-exceptions... no
> checking for gcc option to produce PIC... -fPIC -DPIC
> checking if gcc PIC flag -fPIC -DPIC works... yes
> checking if gcc static flag -static works... no
> checking if gcc supports -c -o file.o... yes
> checking if gcc supports -c -o file.o... (cached) yes
> checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports
> shared libraries... yes
> checking whether -lc should be explicitly linked in... no
> checking dynamic linker characteristics... GNU/Linux ld.so
> checking how to hardcode library paths into programs... immediate
> checking whether stripping libraries is possible... yes
> checking if libtool supports shared libraries... yes
> checking whether to build shared libraries... yes
> checking whether to build static libraries... yes
> checking size of void *... 8
> checking for pkg-config... /usr/bin/pkg-config
> checking pkg-config is at least version 0.9.0... yes
> checking for MONO_DEPENDENCY... yes
> checking for gacutil... /home/jsr/local/bin/gacutil
> checking for al... /home/jsr/local/bin/al
> checking for mono... /home/jsr/local/bin/mono
> checking for mcs... /home/jsr/local/bin/mcs
> checking for MONO_CAIRO... yes
> checking for GTKSHARP... yes
> checking for GLADESHARP... yes
> checking for GAPI... yes
> checking for gapi2-parser... /home/jsr/local/bin/gapi2-parser
> checking for gapi2-codegen... /home/jsr/local/bin/gapi2-codegen
> checking for gapi2-fixup... /home/jsr/local/bin/gapi2-fixup
> checking for LIBART... yes
> checking for GNOMEVFS... yes
> checking for GNOME... yes
> configure: creating ./config.status
> config.status: creating AssemblyInfo.cs
> config.status: creating Makefile
> config.status: creating policy.config
> config.status: creating sources/Makefile
> config.status: creating art/Makefile
> config.status: creating art/art-sharp.dll.config
> config.status: creating art/art-sharp-2.0.pc
> config.status: creating gnome/Makefile
> config.status: creating gnome/gnome-sharp.dll.config
> config.status: creating gnome/gnome-sharp-2.0.pc
> config.status: creating gnome/glue/Makefile
> config.status: creating gnomevfs/Makefile
> config.status: creating gnomevfs/gnome-vfs-sharp.dll.config
> config.status: creating gnomevfs/gnome-vfs-sharp-2.0.pc
> config.status: creating gconf/Makefile
> config.status: creating gconf/doc/Makefile
> config.status: creating gconf/GConf/Makefile
> config.status: creating gconf/GConf/gconf-sharp.dll.config
> config.status: creating gconf/GConf/gconf-sharp-2.0.pc
> config.status: creating gconf/GConf.PropertyEditors/Makefile
> config.status: creating
> gconf/GConf.PropertyEditors/gconf-sharp-peditors-2.0.pc
> config.status: creating gconf/tools/Makefile
> config.status: creating gconf/tools/gconfsharp2-schemagen
> config.status: creating sample/Makefile
> config.status: creating sample/gconf/Makefile
> config.status: creating sample/gnomevfs/Makefile
> config.status: creating config.h
> config.status: config.h is unchanged
> config.status: executing depfiles commands
> config.status: executing libtool commands
> configure: WARNING: unrecognized options: --enable-compile-warnings
> ---
> Configuration summary
>
>    * Installation prefix = /home/jsr/local
>    * C# compiler: /home/jsr/local/bin/mcs -debug -define:GTK_SHARP_2_6
> -define:GTK_SHARP_2_8 -define:GNOME_SHARP_2_16 -define:GNOME_SHARP_2_20
> -define:GNOME_SHARP_2_24
>
>    Optional assemblies included in the build:
>
>       * art-sharp.dll: yes
>       * gnomevfs-sharp.dll: yes
>       * gnome-sharp.dll: yes
>
>       NOTE: if any of the above say 'no' you may install the
>             corresponding development packages for them, rerun
>             autogen.sh to include them in the build.
>
>             gnome-sharp.dll requires libgnomecanvas, libgnome,
>             and libgnomeui.
> ---
> Now type `make' to compile
> [jsr at hermes gnome-sharp]$
>
>
> My gnome-sharp build fails with the following:
>
> [jsr at hermes gnome-sharp]$ make
> make  all-recursive
> make[1]: Entering directory `/home/jsr/dev/gnome-sharp'
> Making all in sources
> make[2]: Entering directory `/home/jsr/dev/gnome-sharp/sources'
> make[2]: Nothing to be done for `all'.
> make[2]: Leaving directory `/home/jsr/dev/gnome-sharp/sources'
> Making all in art
> make[2]: Entering directory `/home/jsr/dev/gnome-sharp/art'
> make[2]: Nothing to be done for `all'.
> make[2]: Leaving directory `/home/jsr/dev/gnome-sharp/art'
> Making all in gnomevfs
> make[2]: Entering directory `/home/jsr/dev/gnome-sharp/gnomevfs'
> Making all in .
> make[3]: Entering directory `/home/jsr/dev/gnome-sharp/gnomevfs'
> make[3]: Nothing to be done for `all-am'.
> make[3]: Leaving directory `/home/jsr/dev/gnome-sharp/gnomevfs'
> make[2]: Leaving directory `/home/jsr/dev/gnome-sharp/gnomevfs'
> Making all in gnome
> make[2]: Entering directory `/home/jsr/dev/gnome-sharp/gnome'
> Making all in .
> make[3]: Entering directory `/home/jsr/dev/gnome-sharp/gnome'
> /home/jsr/local/bin/mcs -debug -define:GTK_SHARP_2_6
> -define:GTK_SHARP_2_8 -define:GNOME_SHARP_2_16 -define:GNOME_SHARP_2_20
> -define:GNOME_SHARP_2_24 -nowarn:0169,0612,0618 -unsafe
> -out:gnome-sharp.dll -target:library
> -r:/home/jsr/local/lib/pkgconfig/../../lib/mono/gtk-sharp-2.0/pango-sharp.dll
> -r:/home/jsr/local/lib/pkgconfig/../../lib/mono/gtk-sharp-2.0/atk-sharp.dll
> -r:/home/jsr/local/lib/pkgconfig/../../lib/mono/gtk-sharp-2.0/gdk-sharp.dll
> -r:/home/jsr/local/lib/pkgconfig/../../lib/mono/gtk-sharp-2.0/gtk-sharp.dll
> -r:/home/jsr/local/lib/pkgconfig/../../lib/mono/gtk-sharp-2.0/glib-sharp.dll
>    /r:../art/art-sharp.dll  /r:../gnomevfs/gnome-vfs-sharp.dll
> -r:/home/jsr/local/lib/pkgconfig/../../lib/mono/2.0/Mono.Cairo.dll
> generated/*.cs  ./BonoboUIVerb.cs  ./IconTheme.cs  ./Modules.cs
> AssemblyInfo.cs
> AssemblyInfo.cs(6,11): warning CS1699: Use compiler option `keyfile' or
> appropriate project settings instead of `AssemblyKeyFile' attribute
> generated/App.cs(41,17): warning CS0108: `Gnome.App.Name' hides
> inherited member `Gtk.Widget.Name'. Use the new keyword if hiding was
> intended
> /home/jsr/local/lib/pkgconfig/../../lib/mono/gtk-sharp-2.0/gtk-sharp.dll
> (Location of the symbol related to previous warning)
> generated/ThemeFile.cs(41,26): warning CS0809: Obsolete member
> `Gnome.ThemeFile.ToString()' overrides non-obsolete member
> `object.ToString()'
> /home/jsr/local/lib/mono/4.5/mscorlib.dll (Location of the symbol
> related to previous warning)
> generated/CanvasShape.cs(200,41): error CS0030: Cannot convert type
> `GLib.Value' to `Art.VpathDash'
> Compilation failed: 1 error(s), 3 warnings
> make[3]: *** [gnome-sharp.dll] Error 1
> make[3]: Leaving directory `/home/jsr/dev/gnome-sharp/gnome'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory `/home/jsr/dev/gnome-sharp/gnome'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/jsr/dev/gnome-sharp'
> make: *** [all] Error 2
> [jsr at hermes gnome-sharp]$
>
>
> If I've left out any information helpful to resolution of the problem,
> I'd be more than happy to provide it.
>
> Any help appreciated.
>
> Regards...Jeremy
>
>
>
> _______________________________________________
> Monodevelop-devel-list mailing list
> Monodevelop-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/monodevelop-devel-list
>



-- 
Michael Hutchinson
http://mjhutchinson.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ximian.com/pipermail/monodevelop-devel-list/attachments/20130109/c80e74e4/attachment-0001.html>


More information about the Monodevelop-devel-list mailing list