Coder Social home page Coder Social logo

Comments (12)

kg avatar kg commented on August 10, 2024

It sounds like it's failing to identify your solution file's outputs. What are the build platforms and configurations it has? The default should be Debug|x86, so make sure building with that configuration works in VS.

Also, try passing it one of your output files instead (mygame\mygame\bin\x86\mygame.exe or whatever). See if that works, to make sure it's the solution builder.

If you're willing to do some debugging, you'll want to set a breakpoint at line 43 or later in SolutionBuilder.cs (in the Compiler) project. Take a look at the results of the build operation and see if you can identify why they don't contain a .exe or .dll.

from jsil.

 avatar commented on August 10, 2024

Also to note, that I was able to build when I used the executable version of mygame as the source. I remember being able to run it on the .sln file. Perhaps things have changed?

JSILc.exe C:\Users\Branch\mygame\mygame\mygame\bin\x86\Debug\mygame.exe

from jsil.

 avatar commented on August 10, 2024

Looks like I commented simultaneously with your post!

For reference, the build platform/configuration is Debug|x86, and this does work in VS.

What could this entail then, about the solution builder? Does it mean my sln could be corrupt?

from jsil.

kg avatar kg commented on August 10, 2024

It's probably a bug in my solution bulider. The only way to identify it would be for me to try building your .sln or for you to look at the state of the solution build result object in SolutionBuilder.cs with a breakpoint.

from jsil.

 avatar commented on August 10, 2024
-       result  {Microsoft.Build.Execution.BuildResult} Microsoft.Build.Execution.BuildResult
        CircularDependency  false   bool
        ConfigurationId 1   int
+       Exception   null    System.Exception
        GlobalRequestId 0   int
        NodeRequestId   0   int
        OverallResult   Success Microsoft.Build.Execution.BuildResultCode
        ParentGlobalRequestId   -1  int
+       ResultsByTarget Count = 4   System.Collections.Generic.IDictionary<string,Microsoft.Build.Execution.TargetResult> {System.Collections.Concurrent.ConcurrentDictionary<string,Microsoft.Build.Execution.TargetResult>}
[RESULTSBYTARGET MEMBERS]
+       [0] {[ValidateProjects, Microsoft.Build.Execution.TargetResult]}    System.Collections.Generic.KeyValuePair<string,Microsoft.Build.Execution.TargetResult>
        Key "ValidateProjects"  string
-       Value   {Microsoft.Build.Execution.TargetResult}    Microsoft.Build.Execution.TargetResult
+       Exception   null    System.Exception
        Items   {Microsoft.Build.Execution.ProjectItemInstance.TaskItem[0]} Microsoft.Build.Framework.ITaskItem[] {Microsoft.Build.Execution.ProjectItemInstance.TaskItem[]}
        ResultCode  Success Microsoft.Build.Execution.TargetResultCode

+       [1] {[ValidateToolsVersions, Microsoft.Build.Execution.TargetResult]}   System.Collections.Generic.KeyValuePair<string,Microsoft.Build.Execution.TargetResult>
        Key "ValidateToolsVersions" string
-       Value   {Microsoft.Build.Execution.TargetResult}    Microsoft.Build.Execution.TargetResult
+       Exception   null    System.Exception
        Items   {Microsoft.Build.Execution.ProjectItemInstance.TaskItem[0]} Microsoft.Build.Framework.ITaskItem[] {Microsoft.Build.Execution.ProjectItemInstance.TaskItem[]}
        ResultCode  Success Microsoft.Build.Execution.TargetResultCode

+       [2] {[ValidateSolutionConfiguration, Microsoft.Build.Execution.TargetResult]}   System.Collections.Generic.KeyValuePair<string,Microsoft.Build.Execution.TargetResult>
        Key "ValidateSolutionConfiguration" string
-       Value   {Microsoft.Build.Execution.TargetResult}    Microsoft.Build.Execution.TargetResult
+       Exception   null    System.Exception
        Items   {Microsoft.Build.Execution.ProjectItemInstance.TaskItem[0]} Microsoft.Build.Framework.ITaskItem[] {Microsoft.Build.Execution.ProjectItemInstance.TaskItem[]}
        ResultCode  Success Microsoft.Build.Execution.TargetResultCode

+       [3] {[Build, Microsoft.Build.Execution.TargetResult]}   System.Collections.Generic.KeyValuePair<string,Microsoft.Build.Execution.TargetResult>
        Key "Build" string
-       Value   {Microsoft.Build.Execution.TargetResult}    Microsoft.Build.Execution.TargetResult
+       Exception   null    System.Exception
        Items   {Microsoft.Build.Execution.ProjectItemInstance.TaskItem[0]} Microsoft.Build.Framework.ITaskItem[] {Microsoft.Build.Execution.ProjectItemInstance.TaskItem[]}
        ResultCode  Success Microsoft.Build.Execution.TargetResultCode

[/RESULTSBYTARGET MEMBERS]
        SubmissionId    0   int
+       Non-Public members      



resultFiles

-       resultFiles Count = 0   System.Collections.Generic.HashSet<string>

Does this help? If not please let me know what else you may need.
Thanks
--spectrum

from jsil.

kg avatar kg commented on August 10, 2024

It looks to me like MSBuild simply isn't building your solution file's outputs. I can't imagine why that would be, and MS's documentation for this API is pretty scarce. If you can reproduce this with a stripped down version of your .sln, or you don't mind sharing it with me for debugging purposes, I can do more digging, but that's about it.

from jsil.

 avatar commented on August 10, 2024

Do you need just the sln file? Or the entire solution? If it's just the sln, I could email it to you.

from jsil.

kg avatar kg commented on August 10, 2024

I would probably need enough to do a compile of the project, which might be prohibitive since it's XNA. The project shouldn't need to be able to run, though, so you could leave out all of the contents of the content project, I think, and you might be able to get away with removing a bunch of the source code if you're worried, as long as the project settings are the same.

from jsil.

 avatar commented on August 10, 2024

Alright, give me a little bit to go through my solution and get it to build without content. I'll send you an email when I'm done putting that together.

from jsil.

 avatar commented on August 10, 2024

I was looking through the JSIL.sln file, and noticed that you removed the Any CPU references. I looked at my sln and noticed that the Any CPU references were there, even though I would normally use the x86 option. When I get home I will try this out and let you know if this makes a difference at all.

ref:
a80444a#JSIL.sln

from jsil.

 avatar commented on August 10, 2024

Performing this fix to my solution file resolved the issue. I removed all lines that started like this:


Debug|Any CPU ...
Release|Any CPU ...
{GUID}.Release|Any CPU ...
{GUID}.Debug|Any CPU ...

Looks like it was something on my side. Even though my build configuration was set to Debug|x86 in Visual Studio.
I wonder if there's any error checking that can be done for this in JSIL.

I will close this issue, thanks for your rapid feedback.

from jsil.

kg avatar kg commented on August 10, 2024

Thanks. I've seen this problem before. I don't know why Visual Studio keeps adding broken solution configurations - I'll try to find a workaround.

Looks like it's this: http://stackoverflow.com/questions/207566/prevent-visual-studio-from-automatically-creating-mixed-platforms-solution-con

from jsil.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.