[MonoDevelop] How to repair latest broken Monodevelop build on Ubuntu Linux 14.04?
Frank Chang
frankchang91 at gmail.com
Mon Dec 7 08:46:58 UTC 2015
Hi Michael,
1. Why do you recommend the monodevelop roslyn branch over the
monodevelop master branch for Ubuntu Linux 14.04 LTS?
2. Why does my Linux C# test program run fine with dnx run -r
coreclr -X64 yet have runtime errors with C# abstract classes such as
XmlReader as well as Microsoft.Data.Sqlite and System.Data.Common
DbConnectionString C# class when I use monodevelop roslyn with mcs.exe
pointing to csc.exe? I can direct you to our bitbucket project with all the
sources and reference assemblies to reproduce this problem.
Thank you
On Mon, Dec 7, 2015 at 1:46 AM, Mike Krüger <mkrueger at xamarin.com> wrote:
> Hi
>
> I recommend using the 'rosyln' branch of monodevelop :).
>
> Regards
> Mike
>
> On Sun, Dec 6, 2015 at 11:36 PM, Frank Chang <frankchang91 at gmail.com>
> wrote:
>
>> Hi Michael,
>> Thank you very much for your help early this morning.
>> Here are the steps I followed to fix the Monodevelop build on the Ubuntu
>> Linux 14.04 LTS desktop.
>>
>> 1. First built mono from source. To build mono from source on Ubuntu
>> first I had to install official Mono since to build mono from source
>> requires official Mono to be installed .
>> 2. To install official mono, I followed the below steps:
>>
>> sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
>> echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
>> sudo apt-get update
>> echo "deb http://download.mono-project.com/repo/debian wheezy-apache24-compat main" | sudo tee -a /etc/apt/sources.list.d/mono-xamarin.list
>> sudo apt-get install git autoconf libtool automake build-essential gettext
>> sudo apt-get install mono-devel
>> sudo apt-get install mono-complete
>> sudo apt-get install referenceassemblies-pcl
>> sudo apt-get install ca-certificates-mono
>>
>>
>>
>> 3. Next to build mono from source , I followed the below steps (This
>> replaces the official mono installed in step 2)
>>
>> sudo su
>> cd /home/frankc/Desktop
>> mkdir mono
>> cd mono
>> export PATH=/usr/bin:$PATH
>> git clone https://github.com/mono/mono.git
>> cd mono
>> ./autogen.sh --prefix=/usr/
>> make
>> sudo make install
>>
>>
>>
>> 4. Then I went forward to build monodevelop from source, here the steps I
>> followed to build monodevelop
>>
>> cd /home/frankc/desktop/mono
>> git clone https://github.com/mono/monodevelop.git
>> cd monodevelop
>> git submodule update --init --recursive
>> ./configure --prefix=/usr/
>> make
>> sudo make install
>>
>> make run.
>>
>>
>> 5. During the step ./configure --prefix=/usr/, one by one it gave the
>> dependency missing,
>> here the dependencies I installed based on error I received in the above
>> step, all executed as sudo venkat
>>
>> sudo apt-get install gnome-sharp2
>> sudo apt-get install libglade2.0-cil-dev
>> sudo apt-get install cmake
>> sudo apt-get install libssh2-1-dev
>> sudo apt-get install zlibc zlib1g zlib1g-dev
>> sudo apt-get install nuget
>>
>> Thank you.
>>
>> Frank
>>
>>
>> On Sun, Dec 6, 2015 at 1:17 AM, Mike Krüger <mkrueger at xamarin.com> wrote:
>>
>>> Hi
>>>
>>> gnome-devel doesn't contain current GTK libs. But anyways the mono is
>>> too old for the current monodevlop to run properly.
>>>
>>> If you want to build it from source I recommend setting up a parallel
>>> environment.
>>>
>>> See:
>>>
>>> http://mikemdblog.blogspot.de/2013/09/how-to-set-up-monodevelop-on-linux.html
>>>
>>> It's a bit outdated (some packages are missing) but still valid. I'll
>>> update the blog entry the next time I reinstall :).
>>>
>>> Regards
>>> Mike
>>>
>>> On Sat, Dec 5, 2015 at 11:57 PM, Frank Chang <frankchang91 at gmail.com>
>>> wrote:
>>>
>>>> We would like to repair the latest broken Monodevelop build on
>>>> Ubuntu Linux 14.04. First, I purged mono-complete & monodevelop and
>>>> followed the steps in this article:
>>>>
>>>> http://gettingsharper.de/2014/10/07/get-and-compile-the-latest-monodevelop-on-ubuntulinux.
>>>> The makefile make process halts early complaining of
>>>> "editor/GtkWorkarounds.cs(73,40): error CS0246: The type or namespace name
>>>> `Gtk' could not be found.
>>>>
>>>> Here is the C# compiler command line used by the Monodevelop main
>>>> folder Makefie
>>>>
>>>> Target CoreCompile:
>>>> Tool /home/vend/lib/mono/4.5/mcs.exe execution
>>>> started with arguments: /noconfig /codepage:65001 /debug:full /debug+
>>>> /optimize- /out:obj/Debug/libstetic.dll
>>>> /resource:obj/Debug/Stetic.stetic.glade,stetic.glade
>>>> /resource:obj/Debug/Stetic.wrapper.objects.xml,objects.xml
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.accellabel.png,accellabel.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.actiongroup.png,actiongroup.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.add-check-label.png,add-check-label.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.add-menu.png,add-menu.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.alignment.png,alignment.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.arrow.png,arrow.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.box-expand.png,box-expand.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.box-fill.png,box-fill.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.button.png,button.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.calendar.png,calendar.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.cell-expand-h.png,cell-expand-h.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.cell-expand-v.png,cell-expand-v.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.cell-fill-h.png,cell-fill-h.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.cell-fill-v.png,cell-fill-v.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.checkbutton.png,checkbutton.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.colorbutton.png,colorbutton.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.colorselection.png,colorselection.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.colorselectiondialog.png,colorselectiondialog.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.combo.png,combo.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.comboentry.png,comboentry.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.custom.png,custom.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.dec-border.png,dec-border.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.dialog.png,dialog.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.drawingarea.png,drawingarea.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.entry.png,entry.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.eventbox.png,eventbox.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.expander.png,expander.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.fileselection.png,fileselection.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.fixed.png,fixed.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.fontbutton.png,fontbutton.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.fontselection.png,fontselection.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.fontselectiondialog.png,fontselectiondialog.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.frame.png,frame.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.globe.png,globe.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.globe-not.png,globe-not.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.handlebox.png,handlebox.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.hbox.png,hbox.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.hbuttonbox.png,hbuttonbox.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.hpaned.png,hpaned.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.hscale.png,hscale.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.hscrollbar.png,hscrollbar.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.hseparator.png,hseparator.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.iconview.png,iconview.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.image.png,image.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.inc-border.png,inc-border.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.label.png,label.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.menu.png,menu.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.menubar.png,menubar.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.messagedialog.png,messagedialog.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.missing.png,missing.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.notebook.png,notebook.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.optionmenu.png,optionmenu.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.progressbar.png,progressbar.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.radiobutton.png,radiobutton.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.remove-check-label.png,remove-check-label.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.remove-menu.png,remove-menu.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.scrolledwindow.png,scrolledwindow.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.spinbutton.png,spinbutton.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.statusbar.png,statusbar.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.table.png,table.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.textview.png,textview.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.togglebutton.png,togglebutton.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.toolbar.png,toolbar.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.treeview.png,treeview.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.vbox.png,vbox.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.vbuttonbox.png,vbuttonbox.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.viewport.png,viewport.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.vpaned.png,vpaned.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.vscale.png,vscale.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.vscrollbar.png,vscrollbar.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.vseparator.png,vseparator.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.widget.png,widget.png
>>>> /resource:obj/Debug/Stetic.wrapper.pixmaps.window.png,window.png
>>>> ClassDescriptor.cs Clipboard.cs CommandDescriptor.cs CustomWidget.cs DND.cs
>>>> editor/Accelerator.cs editor/ActionGroupEditor.cs editor/ActionItem.cs
>>>> editor/ActionMenu.cs editor/ActionMenuBar.cs editor/ActionMenuItem.cs
>>>> editor/ActionToolbar.cs editor/ActionToolItem.cs editor/Boolean.cs
>>>> editor/CellRendererComboBox.cs editor/Char.cs editor/Color.cs
>>>> editor/DateTimeEditor.cs editor/EditIconDialog.cs
>>>> editor/EditIconFactoryDialog.cs editor/Enumeration.cs editor/Flags.cs
>>>> editor/FlagsSelectorDialog.cs editor/FloatRange.cs editor/GroupPicker.cs
>>>> editor/IconList.cs editor/IconSelectorItem.cs editor/IconSelectorMenu.cs
>>>> editor/IconSelectorMenuItem.cs editor/Identifier.cs editor/Image.cs
>>>> editor/ImageFile.cs editor/ImageSelector.cs editor/IntRange.cs
>>>> editor/NonContainerWarningDialog.cs editor/OptIntRange.cs
>>>> editor/ProjectIconList.cs editor/ProjectIconSelectorItem.cs
>>>> editor/ResponseId.cs editor/SelectIconDialog.cs editor/SelectImageDialog.cs
>>>> editor/StockIconList.cs editor/StockIconSelectorItem.cs editor/StockItem.cs
>>>> editor/String.cs editor/StringArray.cs editor/Text.cs editor/TextBox.cs
>>>> editor/TextEditor.cs editor/TextEditorDialog.cs editor/ThemedIcon.cs
>>>> editor/ThemedIconList.cs editor/TimeSpanEditor.cs editor/Translatable.cs
>>>> editor/TreeViewCellContainer.cs editor/WidgetSelector.cs EnumDescriptor.cs
>>>> ErrorWidget.cs GeneratorContext.cs GladeException.cs GladeUtils.cs
>>>> IDesignArea.cs IEditableObject.cs ImageInfo.cs IProject.cs
>>>> IPropertyEditor.cs IRadioGroupManager.cs IResourceProvider.cs
>>>> ItemDescriptor.cs ItemGroup.cs ItemGroupCollection.cs
>>>> NoGuiDispatchAttribute.cs ObjectReader.cs ObjectWrapper.cs
>>>> ObjectWrapperEventHandler.cs ObjectWriter.cs ParamSpec.cs Placeholder.cs
>>>> ProjectIconFactory.cs PropertyDescriptor.cs PropertyEditorAttribute.cs
>>>> PropertyEditorCell.cs RadioGroupManager.cs Registry.cs Set.cs
>>>> SignalDescriptor.cs TranslatableAttribute.cs TypedClassDescriptor.cs
>>>> TypedPropertyDescriptor.cs TypedSignalDescriptor.cs
>>>> undo/ActionDiffAdaptor.cs undo/DiffGenerator.cs undo/IDiffAdaptor.cs
>>>> undo/UndoManager.cs undo/XmlDiffAdaptor.cs WidgetLibrary.cs WidgetUtils.cs
>>>> wrapper/Action.cs wrapper/ActionGroup.cs wrapper/ActionToolbarWrapper.cs
>>>> wrapper/ActionTree.cs wrapper/Bin.cs wrapper/Box.cs wrapper/Button.cs
>>>> wrapper/ButtonBox.cs wrapper/CheckButton.cs wrapper/ColorButton.cs
>>>> wrapper/ComboBox.cs wrapper/ComboBoxEntry.cs wrapper/Container.cs
>>>> wrapper/Custom.cs wrapper/Dialog.cs wrapper/Entry.cs wrapper/Expander.cs
>>>> wrapper/Fixed.cs wrapper/FontButton.cs wrapper/FontSelectionDialog.cs
>>>> wrapper/Frame.cs wrapper/HScale.cs wrapper/HScrollbar.cs
>>>> wrapper/IconView.cs wrapper/Image.cs wrapper/ImageMenuItem.cs
>>>> wrapper/Label.cs wrapper/MenuBar.cs wrapper/MenuItem.cs
>>>> wrapper/MessageDialog.cs wrapper/Misc.cs wrapper/Notebook.cs
>>>> wrapper/Object.cs wrapper/OptionMenu.cs wrapper/Paned.cs
>>>> wrapper/RadioActionGroupManager.cs wrapper/RadioButton.cs
>>>> wrapper/RadioMenuItem.cs wrapper/RadioToolButton.cs wrapper/Range.cs
>>>> wrapper/Scale.cs wrapper/ScrolledWindow.cs wrapper/Signal.cs
>>>> wrapper/SignalChangedEventHandler.cs wrapper/SignalCollection.cs
>>>> wrapper/SignalEventHandler.cs wrapper/SpinButton.cs wrapper/Table.cs
>>>> wrapper/TextView.cs wrapper/ToggleToolButton.cs wrapper/Toolbar.cs
>>>> wrapper/ToolButton.cs wrapper/TreeView.cs wrapper/Viewport.cs
>>>> wrapper/VScale.cs wrapper/VScrollbar.cs wrapper/Widget.cs
>>>> wrapper/WidgetEventHandler.cs wrapper/WidgetNameChangedHandler.cs
>>>> wrapper/Window.cs TopLevelDialog.cs TopLevelWindow.cs
>>>> wrapper/NotifyWorkaround.cs editor/GtkWorkarounds.cs /target:library
>>>> /define:DEBUG /nowarn:1591;1573
>>>> /doc:../../../../build/AddIns/MonoDevelop.GtkCore/libstetic.xml /nostdlib
>>>> /reference:/home/venkat/lib/mono/4.0/Mono.Posix.dll
>>>> /reference:/home/venkat/lib/mono/4.0/System.dll
>>>> /reference:/home/venkat/lib/mono/4.0/System.Xml.dll
>>>> /reference:/home/venkat/lib/mono/4.0/Mono.Cairo.dll
>>>> /reference:/home/venkat/lib/mono/4.0/System.Core.dll
>>>> /reference:/home/venkat/lib/mono/4.0/mscorlib.dll /warn:4
>>>>
>>>> I thought we were missing an assembly reference apparently because
>>>> nuget restore does not fetch the correct GTK and GNOME libraries. Later, A
>>>> Xamarin expert told me that gtk and gnome libraries are not on nuget So,
>>>> you have to install them yourself.
>>>>
>>>> Then I installed the gtk and gnome libraries using sudo apt-get
>>>> install gnome-devel and ran ./configure --profile=stable on monodevelop and
>>>> generated a Makefile which contains a section called GTK_SHARP_LIBS which
>>>> references libraries I know for certain that are stored on my Lenovo
>>>> desktop computer.
>>>>
>>>> When the Makefile hits the Target CoreCompile section it tries to
>>>> compile C# source files which use the gtk-sharp assembly. Apparently , In
>>>> the main Monodevelop makefile, the compilation of C# source files which use
>>>> the gtk-sharp assembly does not explicitly reference the gtk-sharp
>>>> assembly. Is there a way to repair that as well as the entire latest
>>>> Monodevelop compile and install?
>>>> Any help is greatly appreciated. Thank you very much
>>>> Frank
>>>>
>>>> _______________________________________________
>>>> Monodevelop-list mailing list
>>>> Monodevelop-list at lists.ximian.com
>>>> http://lists.ximian.com/mailman/listinfo/monodevelop-list
>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ximian.com/pipermail/monodevelop-list/attachments/20151207/a0ae674a/attachment-0001.html>
More information about the Monodevelop-list
mailing list