signalapp / ringrtc

GNU Affero General Public License v3.0
550 stars 135 forks source link

make build on windows Error? #35

Closed bilisakuratyan closed 2 years ago

bilisakuratyan commented 2 years ago

In the beginning, I was unable to build ringrtc on windows successfully following the guide, because there were something wrong with the path in windows while using the make command. I then modified the makefile trying to compiling on windows. now i have the new issue with generating vs project for webrtc.

the wrong is below: image

The directory can be identified correctly on Mac or Linux, but it's wrong on windows. How can i fix that? Anyone who built it on windows successfully?

jim-signal commented 2 years ago

Hi @bilisakuratyan, this seems like it could be a symbolic link issue. Can you cd in to C:/Users/admin/Documents/Work/ringrtc/src/webrtc/ringrtc and do an ls or dir there? It should link back up to the src directory on the root.

Currently, our standard way to build on Windows is to use the Git bash shell, being sure to enable symbolic links when installing Git for Windows.

bilisakuratyan commented 2 years ago

Hi @jim-signal, I changed your standard way to build it on Windows, using the Git bash shell. The Git global config was below: image

After download all webrtc source code, there were something wrong with running hooks win_toolchain, the error was below: image

Following the tips it gave me, I set the environment variable DEPOT_TOOLS_WIN_TOOLCHAIN=0 on my PC and I also installed vs 2019 on my PC, but it still told me that Can't input load input file "ringrtc".

I can't cd into C:/Users/admin/Documents/Work/ringrtc/src/webrtc/ringrtc and do an ls or dir there. The ringrtc directory atttribute was shown in Git shell as below: image This seems not like a link file.

jim-signal commented 2 years ago

Hi @bilisakuratyan, you can try deleting that ringrtc file and create the expected symbolic link. Before you do, check all these things:

Now you should be able to run this command to make the link (from the src/webrtc/src directory of course): $ ln -s ../../../src ringrtc

And $ ls -l should show something like this: lrwxrwxrwx 1 admin 197121 12 Nov 27 15:00 ringrtc -> ../../../src/

This article might help if you still have issues: https://github.community/t/git-bash-symbolic-links-on-windows/522/10

bilisakuratyan commented 2 years ago

Hi @jim-signal , I've done it. Thank you so much.

Before create the expected symbolic link, I did these things:

jim-signal commented 2 years ago

That's great @bilisakuratyan, we'll look at updating the documentation!