Git Product home page Git Product logo

Comments (7)

AdamWhiteHat avatar AdamWhiteHat commented on May 28, 2024 1

@NickStrupat Ayo--I was working on this library today and I noticed that this and the BigRational library were both targeting the framework "net6.0-windows", which is wrong; there is nothing in either library that is windows-specific, and using the OS-specific target framework moniker makes the library necessarily not cross-platform.

When I saw this today, I thought of you; If you were trying to build a project on a mac and were including this library as a dependency, I'm pretty sure it would not have built for you, complaining about compatibility and frameworks.

Part of my changes today included getting rid of the x86/x64 specific versions,going back to an AnyCPU platform, and making the target frameworks target the cross-platform frameworks only.

I have pushed a new nuget package that included these changes to nuget.org today, version 2023.121.1953 (and 2023.121.2026 for BigRational). So if you were still having issues getting your project to compile with this library, try getting the latest version from nuget, I bet that'll work for you now.

from bigdecimal.

AdamWhiteHat avatar AdamWhiteHat commented on May 28, 2024

No reason in particular. Just that the vast majority of computers these days are 64 bit, I don't even think they make 32 bit processors any more. I didn't expect anyone would need to compile to 32 bit.
Did you need a 32 bit compilation option? It can be a little tricky to set up, so I can set it up for you if you have a need.

from bigdecimal.

AdamWhiteHat avatar AdamWhiteHat commented on May 28, 2024

So I can update the project to have an x86 compilation option, that's no problem.
Getting both the x86 and x64 bit compilation to exist in the same nuget package is an altogether different matter. Presumably its possible, but it requires making your own .targets file and there is no guidance from Microsoft on how to do it; its currently undocumented from what I gather.
So a pre-compiled x86 assembly via nuget isn't in the cards. You'll have to pull the latest from the master branch and build your own. Cool?

from bigdecimal.

NickStrupat avatar NickStrupat commented on May 28, 2024

So I use an M1 mac which is 64 bit but ARM architecture. Would the project still work without an explicit platform ID at all? Just general .NET?

from bigdecimal.

AdamWhiteHat avatar AdamWhiteHat commented on May 28, 2024

It should. There is a "Any CPU" option. Select that and rebuild all, and then at runtime the JIT compiler should choose the correct machine word size.

from bigdecimal.

AdamWhiteHat avatar AdamWhiteHat commented on May 28, 2024

I looked into it, and indeed it is a 64bit architecture, despite being ARM and ARM is typically thought of as 32 bit.
So the nuget package which is 64 bit should work just fine for you.

Do you need anything else? Can I close this ticket now? You can close it too if you're satisfied. Otherwise if I don't hear anything from you for a week or two I will probably close it at that point.

from bigdecimal.

AdamWhiteHat avatar AdamWhiteHat commented on May 28, 2024

Closing issue now.
Feel free to open another ticket if unresolved or you need anything else.
Thanks for taking an interest in my project.

from bigdecimal.

Related Issues (18)

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.