How to compile latest stable Mono - mono

I tried
cd /usr/local/src
wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-4.2.tar.gz
tar -xvf libgdiplus-4.2.tar.gz
cd libgdiplus-4.2
mkdir /opt/m511
./configure --prefix=/opt/m511
make
make install
cd /usr/local/src
wget http://download.mono-project.com/sources/mono/mono-5.11.0.89.tar.bz2
tar jxf mono-5.11.0.89.tar.bz2
cd /usr/local/src/mono-5.11.0.89
./autogen.sh --prefix=/opt/m511
make
but got error
...
make[3]: Entering directory `/usr/local/src/mono-5.11.0.89/mono/utils'
make all-am
make[4]: Entering directory `/usr/local/src/mono-5.11.0.89/mono/utils'
CC os-event-unix.lo
os-event-unix.c: In function ‘mono_os_event_wait_multiple’:
os-event-unix.c:121: warning: ‘data’ may be used uninitialized in this function
os-event-unix.c:123: warning: ‘start’ may be used uninitialized in this function
CC mono-md5.lo
CC mono-sha1.lo
CC mono-logger.lo
CC mono-codeman.lo
In file included from ../../mono/metadata/metadata-internals.h:12,
from ../../mono/metadata/class-internals.h:12,
from ../../mono/metadata/profiler-private.h:10,
from mono-codeman.c:22:
../../mono/metadata/domain-internals.h:10:42: error: mono/metadata/object-forward.h: No such file or directory
In file included from ../../mono/metadata/metadata-internals.h:12,
from ../../mono/metadata/class-internals.h:12,
from ../../mono/metadata/profiler-private.h:10,
from mono-codeman.c:22:
../../mono/metadata/domain-internals.h:615: error: expected declaration specifiers or ‘...’ before ‘MonoReflectionTypeBuilder’
make[4]: *** [mono-codeman.lo] Error 1
make[4]: Leaving directory `/usr/local/src/mono-5.11.0.89/mono/utils'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/usr/local/src/mono-5.11.0.89/mono/utils'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/usr/local/src/mono-5.11.0.89/mono'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/mono-5.11.0.89'
make: *** [all] Error 2
How to compile it ? Mono 4.4.2 compiled OK with those commands.

Related

unable to build valgrind for armv7 in yocto

Unable to build valgrind in yocto
I have highleted the problem i am facing
arm-poky-linux-gnueabi-gcc: error: unrecognized argument in option '-march=armv7ve'
arm-poky-linux-gnueabi-gcc: note: valid arguments to '-march=' are: armv2 armv2a armv3 armv3m armv4 armv4t armv5 armv5e armv5t armv5te armv6 armv6-m armv6j armv6k armv6s-m armv6t2 armv6z armv6zk armv7 armv7-a armv7-m armv7-r armv7e-m armv8-a armv8-a+crc iwmmxt iwmmxt2 native
make[5]: *** [intdiv-intdiv.o] Error 1
make[5]: Leaving directory `/home/sarjoodeen/Project/2018/Nippon/YOCTO/iwG22M-release-bsp/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/valgrind/3.15.0-r0/build/none/tests/arm'
make[4]: *** [check-am] Error 2
make[4]: Leaving directory `/home/sarjoodeen/Project/2018/Nippon/YOCTO/iwG22M-release-bsp/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/valgrind/3.15.0-r0/build/none/tests/arm'
make[3]: *** [check-recursive] Error 1
make[3]: Leaving directory `/home/sarjoodeen/Project/2018/Nippon/YOCTO/iwG22M-release-bsp/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/valgrind/3.15.0-r0/build/none/tests'
make[2]: *** [check-recursive] Error 1
make[2]: Leaving directory `/home/sarjoodeen/Project/2018/Nippon/YOCTO/iwG22M-release-bsp/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/valgrind/3.15.0-r0/build/none'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `/home/sarjoodeen/Project/2018/Nippon/YOCTO/iwG22M-release-bsp/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/valgrind/3.15.0-r0/build'
make: *** [check] Error 2
make: Leaving directory `/home/sarjoodeen/Project/2018/Nippon/YOCTO/iwG22M-release-bsp/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/valgrind/3.15.0-r0/build'
ERROR: oe_runmake failed
WARNING: exit code 1 from a shell command.
ERROR: Function failed: do_compile_ptest_base (log file is located at /home/sarjoodeen/Project/2018/Nippon/YOCTO/iwG22M-release-bsp/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/valgrind/3.15.0-r0/temp/log.do_compile_ptest_base.29480)
The error means that the cross gcc doesn't contain the support for armv7ve architecture. The support for armv7ve has been added in gcc-4.9 as evident from the gcc Changelog https://gcc.gnu.org/gcc-4.9/changes.html. Please check your gcc recipe in yocto sources and make sure the gcc version is 4.9 or greater.

Why build of mono failed

I built mono 5.20.1.19 from tarball successfully. But the build of master from github was failed. Instead of using a existing mono installation for the build, I run make get-monolite-latest for the mcs. On RedHat 6.9 (gcc6.3, cmake3.7.2) the build was crashed(segment fault). On SUSE 12.4(gcc6.3, cmake 3.5.2), the build ended with errors. I thought I might need to checkout the branch 5.20.1.19, but I couldn't find any branch newer then 4.8. Why there doesn't exist such a branch? Thanks in advance. Below are my build errors:
RedHat 6.9
make -C build-shared
make[4]: Entering directory mono-src/mono/btls/build-shared'
make[5]: Entering directorymono-src/mono/btls/build-shared'
make[6]: Entering directory mono-src/mono/btls/build-shared'
Scanning dependencies of target pqueue
make[6]: Leaving directorymono-src/mono/btls/build-shared'
make[6]: Entering directory mono-src/mono/btls/build-shared'
[ 1%] Building C object boringssl/ssl/pqueue/CMakeFiles/pqueue.dir/pqueue.c.o
^[l/bin/sh: line 1: 42877 Segmentation fault (core dumped) /opt/anss/bin/ccache /opt/anss/bin/gcc -DBORINGSSL_IMPLEMENTATION -Imono-src/external/boringssl/ssl/../include -Imono-src/external/boringssl/ssl/pqueue/../../include -Wall -Wsign-compare -Wmissing-field-initializers -fPIC -ggdb -fvisibility=hidden -Wall -Wformat=2 -Wsign-compare -Wmissing-field-initializers -ggdb -fvisibility=hidden -Wshadow -std=c11 -D_XOPEN_SOURCE=700 -o CMakeFiles/pqueue.dir/pqueue.c.o -c mono-src/external/boringssl/ssl/pqueue/pqueue.c
make[6]: *** [boringssl/ssl/pqueue/CMakeFiles/pqueue.dir/pqueue.c.o] Error 139
make[6]: Leaving directorymono-src/mono/btls/build-shared'
make[5]: * [boringssl/ssl/pqueue/CMakeFiles/pqueue.dir/all] Error 2
make[5]: Leaving directory mono-src/mono/btls/build-shared'
make[4]: *** [all] Error 2
make[4]: Leaving directorymono-src/mono/btls/build-shared'
make[3]: [build-shared/libmono-btls-shared.so] Error 2
make[3]: Leaving directory mono-src/mono/btls'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directorymono-src/mono'
make[1]: [all-recursive] Error 1
make[1]: Leaving directory `mono-src'
make: * [all] Error 2
SUSE12.4
Directory does not exist: 'mono-src/external/nuget-buildtasks/src/Microsoft.NuGet.Build.Tasks'
Directory does not exist: 'mono-src/external/nuget-buildtasks/src/Microsoft.NuGet.Build.Tasks'
Directory does not exist: 'mono-src/external/nuget-buildtasks/src/Microsoft.NuGet.Build.Tasks'
Directory does not exist: 'mono-src/external/nuget-buildtasks/src/Microsoft.NuGet.Build.Tasks'
Directory does not exist: 'mono-src/external/nuget-buildtasks/src/Microsoft.NuGet.Build.Tasks'
Directory does not exist: 'mono-src/external/nuget-buildtasks/src/Microsoft.NuGet.Build.Tasks'
Directory does not exist: 'mono-src/external/nuget-buildtasks/src/Microsoft.NuGet.Build.Tasks'
Directory does not exist: 'mono-src/external/nuget-buildtasks/src/Microsoft.NuGet.Build.Tasks'
// gensources produced 8 error(s) and a set of 155 filename(s)
// Invoked with 'mono-src/mcs/class/lib/build/gensources.exe --strict --platformsdir:./../../build ../../build/deps/_xbuild_14__Microsoft.NuGet.Build.Tasks.dll.sources Microsoft.NuGet.Build.Tasks.dll xbuild_14'
// Working directory was 'mono-src/mcs/class/Microsoft.NuGet.Build.Tasks'
make[8]: * No rule to make target '../../build/deps/_xbuild_14__Microsoft.NuGet.Build.Tasks.dll.sources', needed by '../../build/deps/_xbuild_14__Microsoft.NuGet.Build.Tasks.dll.response'. Stop.
../../build/rules.make:226: recipe for target 'do-all' failed
make[7]: * [do-all] Error 2

qtwebkit 5.9.0 required unicode headers

/tmp/12/qtwebkit-opensource-src-5.9.0/Source/WTF/wtf/unicode/icu/UnicodeIcu.h:29:27: fatal error: unicode/uchar.h: No such file or directory
#include <unicode/uchar.h>
^
compilation terminated.
make[2]: *** [.obj/llint/LLIntOffsetsExtractor.o] Error 1
make[2]: Leaving directory `/tmp/12/qtwebkit-opensource-src-5.9.0/build/Source/JavaScriptCore'
make[1]: *** [sub-LLIntOffsetsExtractor-pro-make_first-ordered] Error 2
make[1]: Leaving directory `/tmp/12/qtwebkit-opensource-src-5.9.0/build/Source/JavaScriptCore'
make: *** [sub-Source-JavaScriptCore-JavaScriptCore-pro-make_first-ordered] Error 2
You need to install icu libraries, for detailed operation you can Check the url below:
https://forum.qt.io/topic/39332/i-try-compile-qtwebkit

xsp make error: target `Mono.WebServer.source' is not a directory

I'm Microsoft .NET developer but newbie of Mono. On Cent0S 6.4, I have successfully install Mono. When I try to make & install xsp from http://download.mono-project.com/sources/xsp/xsp-2.10.tar.bz2, it gets the following error.
I google a lot but find nothing value. Any idea?
Thanks.
Leo
make[3]: Nothing to be done for install-exec-am'.
/bin/sh /root/xsp-2.10/install-sh -d
/usr/bin/install -c -m 644 Mono.WebServer.zip Mono.WebServer.tree Mono.WebServer .source
/usr/bin/install: targetMono.WebServer.source' is not a directory
make[3]: * [install-data-local] Error 1
make[3]: Leaving directory /root/xsp-2.10/docs/Mono.WebServer'
make[2]: *** [install-am] Error 2
make[2]: Leaving directory/root/xsp-2.10/docs/Mono.WebServer'
make[1]: [install-recursive] Error 1
make[1]: Leaving directory `/root/xsp-2.10/docs'
make: ** [install-recursive] Error 1
xsp 2.x is not compatible with mono 3.x, upgrade to xsp 3.0.11

unable to compile pacman(ArchLinux package manager) in ubuntu

I have tried to do the Offline Installation as described in the ArchLinux wiki, but it did not worked out as i have mentioned in the thread https://stackoverflow.com/posts/comments/12588344. Hence i have planned to compile the pacman in a machine which has internet connection and then download the packages using the compiled pacman binary and then transfer it to offline ArchLinux Machine.
While i tried to compile the pacman in Ubuntu-11.10 machine i got the following errors
$ make # after ./autogen.sh && ./configure
make all-recursive
make[1]: Entering directory `/home/talespin/archlinux/pacman'
Making all in lib/libalpm
make[2]: Entering directory `/home/talespin/archlinux/pacman/lib/libalpm'
Making all in po
make[3]: Entering directory `/home/talespin/archlinux/pacman/lib/libalpm/po'
test ! -f ./libalpm.pot || \
test -z "ca.gmo cs.gmo da.gmo de.gmo el.gmo en_GB.gmo es.gmo fi.gmo fr.gmo hu.gmo it.gmo kk.gmo lt.gmo nb.gmo pl.gmo pt.gmo pt_BR.gmo ro.gmo ru.gmo sk.gmo sr.gmo sr#latin.gmo sv.gmo tr.gmo uk.gmo zh_CN.gmo zh_TW.gmo" || make ca.gmo cs.gmo da.gmo de.gmo el.gmo en_GB.gmo es.gmo fi.gmo fr.gmo hu.gmo it.gmo kk.gmo lt.gmo nb.gmo pl.gmo pt.gmo pt_BR.gmo ro.gmo ru.gmo sk.gmo sr.gmo sr#latin.gmo sv.gmo tr.gmo uk.gmo zh_CN.gmo zh_TW.gmo
make[4]: Entering directory `/home/talespin/archlinux/pacman/lib/libalpm/po'
: --update --lang=ca ca.po libalpm.pot
rm -f ca.gmo && : -c --statistics --verbose -o ca.gmo ca.po
mv: cannot stat `t-ca.gmo': No such file or directory
make[4]: *** [ca.gmo] Error 1
make[4]: Leaving directory `/home/talespin/archlinux/pacman/lib/libalpm/po'
make[3]: *** [stamp-po] Error 2
make[3]: Leaving directory `/home/talespin/archlinux/pacman/lib/libalpm/po'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/talespin/archlinux/pacman/lib/libalpm'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/talespin/archlinux/pacman'
make: *** [all] Error 2
I have cloned the source from git://projects.archlinux.org/pacman.git and tried compiling with the commit e6f72c61a098b52ea29e54b8eb4739a2ff81e6b0 and its parents(until commit ae25167bcd592186749b79ea31b10fb78ed9fb2d) with no success.
Solved as explained in the mailing list http://mailman.archlinux.org/pipermail/pacman-dev/2012-March/015341.html
Used the git commit e6f72c61a098b52ea29e54b8eb4739a2ff81e6b0in
repo git://projects.archlinux.org/pacman.git
1) $ git clean -xfd; ./autogen.sh && ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
--enable-git-version --enable-debug --without-gpgme
2) cd lib/libalpm
3) In the Makefile replace line
LIBS = -lssl -larchive -lm
with
LIBS = -lssl -larchive -lm -lcrypto
4) cd ../../ && make