Oct 2018 - How to update to latest Fuselibs and Uno

Tip: its a good practice to backup your older files :smiley:

  1. Download latest Fuselibs and Uno:
  1. Compile Uno
    Mac
    2.1. Get the prerequisites (Mono, Make, NodeJS and NuGet via mono) mono nuget.exe (Ref)
    2.2. Run make release from terminal/command line of the Uno folder
    Win
    2.1. Get the prerequisites (Mono, Bash via MSYS2, NodeJS and NuGet)
    2.1.1. Get all the 64bit versions!
    2.1.2. Bash - donā€™t forget to install and update the packages by running pacman -Syu inside MSYS2, close the app, then run pacman -Su to update the rest of the packages.
    2.1.3. Bash - Add path to your environment variables ā€œC:\msys64\usr\binā€ and ā€œC:\msys64\usr\local\binā€ via Control Panel > System > View advanced system settings > Environment Variables > System Variables > Path (Ref)
    2.1.4. Mono - Add path to your environment variables ā€œC:\Program Files\Mono\binā€
    2.2. Get Visual Studio (Select ā€œ.Net desktop developmentā€ if installing via VS Community 2017)
    2.3. Open uno.sln in the uno-master folder
    2.4. In VS, make sure ā€œUno.CLI.Mainā€ is selected in Startup Projects dropdown, then click Start
    2.5. Run the uno in the /bin folder uno --version
    2.6. Side thought: I donā€™t think we need bash and nodejs for Windows VS route, perhaps someone can confirm this?

  2. Setup latest Fuselibs with your project
    3.1. Create a file named .unoconfig in your project folder
    3.2. Enter the path to the fuselibs in the file on the first line like so:
    Packages.SourcePaths += /github/fuselibs/Source

  3. Setup latest Uno
    You will find your compiled Uno in the release folder
    4.1. Copy uno executables(uno & uno.exe) to fuselibs/Stuff folder
    4.2. Copy lib folder to fuselibs/Stuff/lib folder
    4.3. Mac: Copy and rename the bin folder to Uno folder in the Fuse application: Fuse.app/Contents/Uno
    Win: Copy contents of bin folder into Program Files (x86)/Fuse
    4.4. Copy fuselibs/Stuff/uno.packages and override Fuse.app/Contents/uno.packages

  4. Run uno doctor in project folder to make sure your libs are up-to-date.

  5. Run or export as per usual

P.s. if Iā€™ve left anything out, just let me know.

1 Like

Hello! On Windows when running ā€œmake releaseā€ I get the following error:

process_begin: CreateProcess(NULL, bash -l scripts/pack.sh, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [release] Error 2

I have added uno and uno/bin to the system environment variables.

Sounds like youā€™re missing bash. We require msys2 on windows. This should already be covered in the readme, I think

Thanks! I installed msys2 following the instructions in https://www.msys2.org, but maybe itā€™s to do with environment variables not set correctlyā€¦

Yeah, it looks like bash needs to be in path

Though this issue is unrelated to aeqĀ“s post about ā€œFuse Preview not working with the latest Fuse-libs and Unoā€. Can we get an insight on that?

Hello! I installed Bash and it works ok in the command line, but the same error comes up. If I run ā€œbash scripts/build.shā€ instead of ā€œmake releaseā€, I get this:

C:\Users\Matti TihverƤinen\Documents\GitHub\uno>bash scripts/build.sh
: No such file or directorycripts/common.sh
scripts/build.sh: line 5: $'\r': command not found
scripts/build.sh: line 12: $'\r': command not found
scripts/build.sh: line 14: syntax error near unexpected token `$'do\r''
'cripts/build.sh: line 14: `for arg in "$@"; do

I have a feeling you didnā€™t install Bash, just MSYS2; check my updated 2.1. step.

1 Like

Thanks for the updated instructions! Iā€™ve been running Fuse now 100% on a Mac without a problem, so I forgot about the issue. Iā€™m sure it was with Bash missing.

1 Like

I was just thinking that for Windows users the terminal route of getting it working is a bit convoluted and since it is Windows, why not use VS lol

Hey,

Iā€™m having crashes with iPhoneX in Fuse 1.9 and tried to install to latest with this guide. However the uno doctor gives me a lot of errors related to ā€˜Fuse.Reactive.Javascript (reflector)ā€™ thingy. Obviously will get these when trying to build my project.

Can anyone help me? Thanks.

Ah I miserable failed the 4.3. Works now :slight_smile:

1 Like

Hello, I read the latest version of Uno, fuselibs, and follow the instructions. I have a problem. So I leave a comment like this way.

Iā€™m using the Visual Studio 2017 version, and I ran Uno.CLI.Main after installing ".Net desktop development as shown in the method, and I encountered the following error.

ā€˜uno.exeā€™ (CLR v4.0.30319: uno.exe): Load 'C:\Users\luid\Downloads\uno-1.12.1\src\main\Uno.CLI.Main\Debug\MonOptions.dll. Module built without symbol

ā€˜[11016] uno.exeā€™ program terminated (code: 0 (0x0))

Is the above error normal or wrong?

Hi Haruka,

This is normal when using Visual Studio. If you Start Without Debugging (press CTRL + F5) the window will stay open.

You can also run your uno in Command Prompt by running C:\Users\luid\Downloads\uno-1.12.1\bin\uno.

Thank you very much!

hello guys
Fuse Preview not working with the latest fuselibs and Uno in win 10

Iā€™m sure the mobile previews are working, do you mean the desktop preview?

hello
i get the screen in preview 1.10.0

yeah, thatā€™s the desktop preview, it was part of the studio which is not currently maintained, just the fuselibs and uno, please check and support the funding goal:

1 Like

hello guys
after update uno and fuselibs run fuse build --target=Android --run get this error