Giter Site home page Giter Site logo

Comments (5)

alefminus avatar alefminus commented on June 16, 2024

7.2.ftbfs.build.log

from renode.

alefminus avatar alefminus commented on June 16, 2024

This is the diff between the failed and successful builds (after replacing some spaces by end of lines to let the line oriented meld give better output):

image

The main difference is a missing mscorelib.dll in the failed build, and some changes from api-4.5 versions to 4.0.0.0 versions
success.txt
failed.txt

from renode.

ajelinski avatar ajelinski commented on June 16, 2024

Hello @alefminus,

Thanks for reporting this issue.

We are able to reproduce the problem on Fedora 39. It isn't really related to the C# language version but it's due to the .NET Framework version upgrade.

Fedora's mono-complete package only contains libraries to build with .NET Framework versions 4.0, 4.5 and 4.7.1. This is why building Renode, which currently targets .NET Framework 4.6.2, fails.

We strongly recommend using a mono-complete package supplied directly by the Mono Project. This is the most complete package as it contains the Roslyn compiler, which is missing in the Fedora's package, and enables building software targeting any .NET Framework version. The first one is especially important because there are known issues with mcs, the legacy C# compiler, e.g., handling numbers with separators like 0x1_0000_0000.

The site doesn't contain any official instructions for Fedora but they supply RPM repositories targetting CentOS. We have verified one can add the repository, use it to install Mono and then build Renode successfully in a fresh Fedora 39 docker container with:

dnf install 'dnf-command(config-manager)'
dnf config-manager --add-repo https://download.mono-project.com/repo/centos8-stable.repo
yum install gcc git gtk-sharp2 mono-complete
git clone --recursive -j 10 https://github.com/renode/renode
cd renode
./build.sh

If there are any reasons you have to use Fedora's mono-complete package, it is possible to enforce .NET Framework version building Renode. If this is the case then we have verified it's possible to build Renode with it by enforcing the use of .NET Framework 4.7.1:

./build.sh --force-net-framework-version 4.7.1

from renode.

alefminus avatar alefminus commented on June 16, 2024

from renode.

ajelinski avatar ajelinski commented on June 16, 2024

Excellent, thanks for the confirmation.

from renode.

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.