Fsharp binding for monodevelop via add-in manager can't resolve dependencies - linux

I need to run F# with monodeveloper on Arch Linux. (Please don't advice me to NOT use it, i have to use it as it is required by a university course). I tried to add Language Binding for F# as it is described in this link(downloaded zip file, extract it and tried to add from add-in manager):
https://code.google.com/p/wildart/wiki/FSharpBinding
It gives me the following errors:
The selected add-ins can not be installed because there are dependency conflicts.
The package 'Components v2.2' could not be found in any repository
The package 'Core v2.2' could not be found in any repository
The package 'Core.Gui v2.2' could not be found in any repository
The package 'Ide v2.2' could not be found in any repository
The package 'Projects v2.2' could not be found in any repository
The package 'Projects.Gui v2.2' could not be found in any repository
How can i solve this problem? I search on the internet and couldn't find a solution yet.
Second way, i tried to build and install from scratch as described in github:
https://github.com/fsharp/fsharpbinding/tree/master/monodevelop
I've downloaded fsharpbinding.zip, installed nuget(i don't know what else i should download, as it says "required nuget packages"), unzip the file, and call ./configure.sh under his folder. It fails because it can't find fsc in given paths:
which: no fsc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
It successfully finds all other directories that it looks for. F# is already installed but i don't know how to find fsc to pass its path to configure.sh. What should i do?

just ran into this, and it seems to be this issue. fixed it by uninstalling monodevelop and installing monodevelop-latest from aur

Related

How can I debug what targets a given NuGet package?

I'm trying to install Twilio Voice for Xamarin, and when I try to add it to my app, I get this error:
Attempting to gather dependency information for package 'Twilio.Voice.Xamarin.2.0.0-beta4-1' with respect to project 'voipphone', targeting 'Xamarin.iOS,Version=v1.0'
GET https://api.nuget.org/v3/registration1-gz/twilio.voice.xamarin/index.json
OK https://api.nuget.org/v3/registration1-gz/twilio.voice.xamarin/index.json 169ms
Total number of results gathered : 5
Gathering dependency information took 705.89 ms
Summary of time taken to gather dependencies per source :
https://api.nuget.org/v3/index.json - 171.21 ms
Attempting to resolve dependencies for package 'Twilio.Voice.Xamarin.2.0.0-beta4-1' with DependencyBehavior 'Lowest'
Resolving dependency information took 0 ms
Resolving actions to install package 'Twilio.Voice.Xamarin.2.0.0-beta4-1'
Resolved actions to install package 'Twilio.Voice.Xamarin.2.0.0-beta4-1'
Retrieving package 'Twilio.Voice.Xamarin 2.0.0-beta4-1' from 'nuget.org'.
Install failed. Rolling back...
Package 'Twilio.Voice.Xamarin.2.0.0-beta4-1' does not exist in project 'privatephone'
Package 'Twilio.Voice.Xamarin.2.0.0-beta4-1' does not exist in folder '/Users/Joe/Projects/voipapp/packages'
Executing nuget actions took 56.56 ms
Could not install package 'Twilio.Voice.Xamarin 2.0.0-beta4-1'. You are trying to
install this package into a project that targets 'Xamarin.iOS,Version=v1.0',
but the package does not contain any assembly references or content files that are compatible
with that framework. For more information, contact the package author.
Question
How can I manually download, inspect this NuGet package so I can see its intended use?
To download a Nuget Package, just go to this url: https://www.nuget.org/api/v2/package/Twilio.Voice.Xamarin/2.0.0-beta4-1
Once you download it, you can use something like 7zip to extract it and see its contents.
Looking inside it, it is designed for Xamarin.iOS and Android and I successfully installed it in my Xamarin.iOS app.

How can I use my own build of a package with stack?

The bigger picture is that I'm trying to use the sdl2 package from Stackage (lts 8.1). Though, I'm having a bit of an issue; The package is missing a compiler flag, as detailed in this issue on GitHub. As such, it doesn't build properly.
However, if I clone the repository, I can add the missing compiler flag to the .cabal file and build it myself, which solves the issue. I now have a working build of the package.
So my question is: How can I, in a separate project, use my own working build of the sdl2 package, instead of the one from Stackage?
There are a few ways of doing that with Stack. The one I like the most, and which sounds like a good fit for your scenario, is uploading the repository with your fork to GitHub (or wherever else you find appropriate) and then adding a reference to the online repository as an extra-dep to the packages section of stack.yaml. For the sake of illustration, here is the packages section for a project of mine in which I had to do that:
packages:
- '.'
- location:
git: https://github.com/duplode/threepenny-gui
commit: 7e4e3a41cbb5e55312d4375612790d633ccf1e7a
extra-dep: true

Azure build - [error]Unable to find version '' of package

Im trying to get a solution with Syncfusion to work.
But every time I try to deploy to Azure i get the following errors
##[error]Unable to find version '13.3.0.12' of package 'Syncfusion.AspNet.Mvc5'.
##[error]Unable to find version '13.3.0.12' of package 'Syncfusion.JavaScript'.
##[error]Unable to find version '13.3.0.12' of package 'Syncfusion.Web.Base45'.
##[error]Unable to find version '13.3.0.12' of package 'Syncfusion.Web.FileFormatsBase45'.
##[error]Unexpected exit code 1 returned from tool NuGet.exe
I tried creating a NuGet.config with the link to the syncfusion but dont work.
If i check the Packages folder i can see all the packages it says it cant find
Hope somone can help
Apparently you are using private NuGet feed, as these packages are not listed on the official NuGet feed, thus the error message.
Here is confirmation that these packages are not listed on the public NuGet feed:
http://www.nuget.org/packages?q=Syncfusion.AspNet.Mvc5
http://www.nuget.org/packages?q=Syncfusion.JavaScript
http://www.nuget.org/packages?q=Syncfusion.Web.Base45
http://www.nuget.org/packages?q=Syncfusion.Web.FileFormatsBase45
Which is also confirmed by the Syncfusion docs, which describe a custom feed for their packages: http://help.syncfusion.com/extension/syncfusion-nuget-packages/nuget-install-and-configuration
To enable restore of Syncfusion packages, check this SO question and its accepted answer on how can you include custom NuGet feeds to your Azure Web app deployment.

Can't compile project after adding SFML.NET by Nuget

After adding SFML.NET through Nuget Packge manager I got the following error:
Error 4 The "UnzipNuspec" task was not found. Check the following: 1.) The name of the
task in the project file is the same as the name of the task class. 2.) The task class is
"public" and implements the Microsoft.Build.Framework.ITask interface. 3.) The task is
correctly declared with <UsingTask> in the project file, or in the *.tasks files located
in the "C:\Windows\Microsoft.NET\Framework\v4.0.30319" directory.
I'm using Visual Studio 2012.
As pointed out in other similar questions, I've tried to close and open MSVS, it didn't helped.
I also checked out the build tools path in the registry, and it points to right directory.
I tried to install and uninstall Nuget packeage.
I found out that error possibly somehow connected to it's dependency : Baseclass.Contrib.Nuget.Output, but I can't find out how to fix it.
It's a bug in their build script.
Go to the packages folder for your solution and locate the following file:
Baseclass.Contrib.Nuget.Output.1.0.6\build\net40\Baseclass.Contrib.Nuget.Output.targets
Around line 84 in that file you'll find a couple of <Using Namespace=... /> tags. Add this after those, before the <Code...> tag:
<Using Namespace="System.Threading" />
I've reported this on their github issues list as well.

Adding dependencies from a single file, without composer.json

I am struggling around a wrong usage of composer, for sure.
I set up this repository: https://github.com/alle/assets-merger
I forked the project and was just trying to make it a kohana-module, including all the dependencies.
As for it would need the YUI comporess JAR, I was trying to make just that JARfile as a dependency, and I ended to declare it in the composer.json file (please, look at this).
Once I need to add my new package to a project I add it in the require section as follows:
...
"alle/assets-merger": "dev-master",
...
But the (latest) composer update command says:
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Installation request for alle/assets-merger dev-develop -> satisfiable by alle/assets-merger[dev-develop].
- alle/assets-merger dev-develop requires yui/yuicompressor 2.4.8 -> no matching package found.
Potential causes:
- A typo in the package name
- The package is not available in a stable-enough version according to your minimum-stability setting see <https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion> for more details.
And my story ends here.
How should I configure my composer.json in the https://github.com/alle/assets-merger repository, in order to include it as a fully satisfied kohana-module in other projects?
Some things I notice in your composer.json.
There is a version of that CSS minify available on Packagist which says it is just a copy of the original Goole-Code hosted files, but with Composer: natxet/cssmin. It is version 3.0.2, but I think that shouldn't make a difference.
mrclay/minify is included twice in the packages with the same version. It also is available on Packagist. You will probably already use that (version 2.2.0 is registered, and because you didn't turn of Packagist access, it will be generally available for install unless a version requirement or conflict prevents it).
You are trying to download a JAR file (which is a java executable without and PHP), but try to get PHP classmaps out of it. That will fail for sure.
You did miss the big note in the Composer documentation saying that Composer cannot resolve repositories mentioned in sub packages, only in the root package. That means that whatever you mention in your alle/asset-merger package will not be used if you use that package anywhere else. You'd have to duplicate these repositories in every package in addition to adding the package name itself as "required".
What this means is that you probably avoided missing mrclay/minify because it is available on Packagist, you might as well have added the cssmin by accident, but you definitly did not add YUICompressor.
But you shouldn't add this in the first place, because it is no PHP software. You can however add post-install commands to your projects. All your Composer integration does is download the JAR file. You can do that with a post-install or post-update command. See the documentation here.

Resources