[GH-ISSUE #960] Apple M1 native build #771

Open
opened 2026-05-05 07:03:04 -06:00 by gitea-mirror · 37 comments
Owner

Originally created by @senf666 on GitHub (Nov 25, 2020).
Original GitHub issue: https://github.com/debauchee/barrier/issues/960

Would be nice to have a native M1 build please. Is it as simple as recompiling on an M1 machine?
Thanks.

Originally created by @senf666 on GitHub (Nov 25, 2020). Original GitHub issue: https://github.com/debauchee/barrier/issues/960 Would be nice to have a native M1 build please. Is it as simple as recompiling on an M1 machine? Thanks.
Author
Owner

@NikoMuffin commented on GitHub (Nov 27, 2020):

+1000 this

<!-- gh-comment-id:734515552 --> @NikoMuffin commented on GitHub (Nov 27, 2020): +1000 this
Author
Owner

@mdg4486 commented on GitHub (Nov 27, 2020):

+2000 on this.

<!-- gh-comment-id:734534118 --> @mdg4486 commented on GitHub (Nov 27, 2020): +2000 on this.
Author
Owner

@ryancnelson commented on GitHub (Dec 1, 2020):

more than being "nice to have", barrier 2.3.3 release will not start on my m1 macbook air. does it work at all for others?

<!-- gh-comment-id:736799404 --> @ryancnelson commented on GitHub (Dec 1, 2020): more than being "nice to have", barrier 2.3.3 release will not start on my m1 macbook air. does it work at all for others?
Author
Owner

@ryancnelson commented on GitHub (Dec 1, 2020):

more than being "nice to have", barrier 2.3.3 release will not start on my m1 macbook air. does it work at all for others?

... sorry for the distraction: this was a configuration + gatekeeper problem. i've got it running now on my m1 laptop.

<!-- gh-comment-id:736820658 --> @ryancnelson commented on GitHub (Dec 1, 2020): > more than being "nice to have", barrier 2.3.3 release will not start on my m1 macbook air. does it work at all for others? ... sorry for the distraction: this was a configuration + gatekeeper problem. i've got it running now on my m1 laptop.
Author
Owner

@james-womack commented on GitHub (Dec 18, 2020):

I believe https://github.com/Homebrew/brew/issues/7857#issuecomment-748170325 may resolve the qt dependency used in the build_dist.sh.in for macOS. I might have some time to take a crack at building it on my m1 Mac mini over the holidays. Running on Rosetta 2 seems to be fine so far between my MacOS and Windows machines however.

<!-- gh-comment-id:748294309 --> @james-womack commented on GitHub (Dec 18, 2020): I believe https://github.com/Homebrew/brew/issues/7857#issuecomment-748170325 may resolve the `qt` dependency used in the [build_dist.sh.in for macOS](https://github.com/debauchee/barrier/blob/e032d14a48e0058374e3cb7705542d5f26a625df/dist/macos/bundle/build_dist.sh.in#L51). I might have some time to take a crack at building it on my m1 Mac mini over the holidays. Running on Rosetta 2 seems to be fine so far between my MacOS and Windows machines however.
Author
Owner

@mcoolidge commented on GitHub (Jan 4, 2021):

I just tried building from source on an M1 but it fails after some time.

ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [bin/barrier] Error 1
make[1]: *** [src/gui/CMakeFiles/barrier.dir/all] Error 2
make: *** [all] Error 2

<!-- gh-comment-id:754283560 --> @mcoolidge commented on GitHub (Jan 4, 2021): I just tried building from source on an M1 but it fails after some time. ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[2]: *** [bin/barrier] Error 1 make[1]: *** [src/gui/CMakeFiles/barrier.dir/all] Error 2 make: *** [all] Error 2
Author
Owner

@mcoolidge commented on GitHub (Jan 13, 2021):

I have been using barrier mostly fine between windows (server) and mini m1 (client), but the CPU usage spikes sometimes up to 25% and I get severe lag if the CPU is otherwise stressed.

<!-- gh-comment-id:759165269 --> @mcoolidge commented on GitHub (Jan 13, 2021): I have been using barrier mostly fine between windows (server) and mini m1 (client), but the CPU usage spikes sometimes up to 25% and I get severe lag if the CPU is otherwise stressed.
Author
Owner

@caparomula commented on GitHub (Jan 22, 2021):

I just built 2.3.3 on my M1 mac. You need to fix the OPENSSL_ROOT definition in CMakeLists.txt. Here's a diff that removes the hard-coded path for homebrew:

diff --git a/CMakeLists.txt b/CMakeLists.txt
index c56b30be..7c2b461b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -329,9 +329,8 @@ elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
             ${OPENSSL_ROOT}/lib/libcrypto.a
             z
         )
-    elseif (IS_DIRECTORY /usr/local/opt/openssl AND BREW_PROGRAM)
-        # brew
-        set (OPENSSL_ROOT /usr/local/opt/openssl)
+    elseif (BREW_PROGRAM)
+       exec_program(brew ARGS "--prefix openssl" OUTPUT_VARIABLE OPENSSL_ROOT)
 
         include_directories (BEFORE SYSTEM ${OPENSSL_ROOT}/include)
 

Also, I modified clean_build.sh to target 11.1 instead of 10.9. Not sure if it matters; I had just changed that prior to discovering the root cause of the OPENSSL issue, and never bothered changing it back, since I'm just building for my personal M1 MacBook, which obviously does not run MacOS 10.9.

diff --git a/clean_build.sh b/clean_build.sh
index 3a92d8b9..9cdaa6dc 100755
--- a/clean_build.sh
+++ b/clean_build.sh
@@ -14,7 +14,7 @@ if [ "$(uname)" = "Darwin" ]; then
     # OSX needs a lot of extra help, poor thing
     # run the osx_environment.sh script to fix paths
     . ./osx_environment.sh
-    B_CMAKE_FLAGS="-DCMAKE_OSX_SYSROOT=$(xcode-select --print-path)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 $B_CMAKE_FLAGS"
+    B_CMAKE_FLAGS="-DCMAKE_OSX_SYSROOT=$(xcode-select --print-path)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=11.1 $B_CMAKE_FLAGS"
 fi
 # allow local customizations to build environment
 [ -r ./build_env.sh ] && . ./build_env.sh
@@ -28,5 +28,6 @@ mkdir build || exit 1
 cd build || exit 1
 echo Starting Barrier $B_BUILD_TYPE build...
 $B_CMAKE $B_CMAKE_FLAGS .. || exit 1
+export VERBOSE=1
 make || exit 1
 echo "Build completed successfully"
<!-- gh-comment-id:765485008 --> @caparomula commented on GitHub (Jan 22, 2021): I just built 2.3.3 on my M1 mac. You need to fix the OPENSSL_ROOT definition in CMakeLists.txt. Here's a diff that removes the hard-coded path for homebrew: ``` diff --git a/CMakeLists.txt b/CMakeLists.txt index c56b30be..7c2b461b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -329,9 +329,8 @@ elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin") ${OPENSSL_ROOT}/lib/libcrypto.a z ) - elseif (IS_DIRECTORY /usr/local/opt/openssl AND BREW_PROGRAM) - # brew - set (OPENSSL_ROOT /usr/local/opt/openssl) + elseif (BREW_PROGRAM) + exec_program(brew ARGS "--prefix openssl" OUTPUT_VARIABLE OPENSSL_ROOT) include_directories (BEFORE SYSTEM ${OPENSSL_ROOT}/include) ``` Also, I modified clean_build.sh to target 11.1 instead of 10.9. Not sure if it matters; I had just changed that prior to discovering the root cause of the OPENSSL issue, and never bothered changing it back, since I'm just building for my personal M1 MacBook, which obviously does not run MacOS 10.9. ``` diff --git a/clean_build.sh b/clean_build.sh index 3a92d8b9..9cdaa6dc 100755 --- a/clean_build.sh +++ b/clean_build.sh @@ -14,7 +14,7 @@ if [ "$(uname)" = "Darwin" ]; then # OSX needs a lot of extra help, poor thing # run the osx_environment.sh script to fix paths . ./osx_environment.sh - B_CMAKE_FLAGS="-DCMAKE_OSX_SYSROOT=$(xcode-select --print-path)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 $B_CMAKE_FLAGS" + B_CMAKE_FLAGS="-DCMAKE_OSX_SYSROOT=$(xcode-select --print-path)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=11.1 $B_CMAKE_FLAGS" fi # allow local customizations to build environment [ -r ./build_env.sh ] && . ./build_env.sh @@ -28,5 +28,6 @@ mkdir build || exit 1 cd build || exit 1 echo Starting Barrier $B_BUILD_TYPE build... $B_CMAKE $B_CMAKE_FLAGS .. || exit 1 +export VERBOSE=1 make || exit 1 echo "Build completed successfully" ```
Author
Owner

@robcz commented on GitHub (Jan 29, 2021):

Also, I modified clean_build.sh to target 11.1 instead of 10.9. Not sure if it matters; I had just changed that prior to discovering the root cause of the OPENSSL issue, and never bothered changing it back, since I'm just building for my personal M1 MacBook, which obviously does not run MacOS 10.9.

I was able to build barrier on my M1 MacBook without making the clean_build.sh changes. It does throw a few warnings related to mismatching build targets between 11.1 and releases in the 10.X series, but it builds and seems to run just fine.

<!-- gh-comment-id:769825044 --> @robcz commented on GitHub (Jan 29, 2021): > Also, I modified clean_build.sh to target 11.1 instead of 10.9. Not sure if it matters; I had just changed that prior to discovering the root cause of the OPENSSL issue, and never bothered changing it back, since I'm just building for my personal M1 MacBook, which obviously does not run MacOS 10.9. I was able to build barrier on my M1 MacBook without making the clean_build.sh changes. It does throw a few warnings related to mismatching build targets between 11.1 and releases in the 10.X series, but it builds and seems to run just fine.
Author
Owner

@zachlatta commented on GitHub (Mar 10, 2021):

I was unable to make an M1 native build that launched. I was able to get it to compile, but then got the following error when attempting to launch it (by double clicking on the built Barrier.app):

Process:               barrier [36614]
Path:                  /Users/USER/*/Barrier.app/Contents/MacOS/barrier
Identifier:            barrier
Version:               2.3.3-release (2.3.3-release)
Code Type:             ARM-64 (Native)
Parent Process:        ??? [1]
Responsible:           barrier [36614]
User ID:               501

Date/Time:             2021-03-10 10:18:39.148 -0500
OS Version:            macOS 11.2.2 (20D80)
Report Version:        12
Anonymous UUID:        9CF9DE70-97CA-4210-920E-5AD5E3D1EC2C

Sleep/Wake UUID:       6885CD96-C2A3-4C5C-8E21-890195218D06

Time Awake Since Boot: 32000 seconds
Time Since Wake:       1000 seconds

System Integrity Protection: enabled

Crashed Thread:        0

Exception Type:        EXC_BAD_ACCESS (Code Signature Invalid)
Exception Codes:       0x0000000000000032, 0x0000000100338000
Exception Note:        EXC_CORPSE_NOTIFY

Termination Reason:    Namespace CODESIGNING, Code 0x2

kernel messages:

VM Regions Near 0x100338000:
    __LINKEDIT                  1002cc000-100338000    [  432K] r--/r-- SM=COW  /Users/*/Barrier.app/Contents/MacOS/barrier
--> mapped file                 100338000-10033c000    [   16K] r--/r-x SM=PRV  Object_id=55af5927
    __TEXT                      100538000-1005b4000    [  496K] r-x/r-x SM=COW  /usr/lib/dyld

Application Specific Information:
dyld: launch, loading dependent libraries
@loader_path/../Frameworks/QtWidgets.framework/Versions/5/QtWidgets

Thread 0 Crashed:
0   dyld                          	0x0000000100594780 bcmp + 16
1   dyld                          	0x0000000100555408 ImageLoaderMachO::validateFirstPages(linkedit_data_command const*, int, unsigned char const*, unsigned long, long long, ImageLoader::LinkContext const&) + 136
2   dyld                          	0x000000010055c3b8 ImageLoaderMachOCompressed::instantiateFromFile(char const*, int, unsigned char const*, unsigned long, unsigned long long, unsigned long long, stat const&, unsigned int, unsigned int, linkedit_data_command const*, encryption_info_command const*, ImageLoader::LinkContext const&) + 268
3   dyld                          	0x0000000100553ffc ImageLoaderMachO::instantiateFromFile(char const*, int, unsigned char const*, unsigned long, unsigned long long, unsigned long long, stat const&, ImageLoader::LinkContext const&) + 172
4   dyld                          	0x000000010053c290 dyld::loadPhase6(int, stat const&, char const*, dyld::LoadContext const&) + 668
5   dyld                          	0x0000000100544dd8 dyld::loadPhase5(char const*, char const*, dyld::LoadContext const&, unsigned int&, std::__1::vector<char const*, std::__1::allocator<char const*> >*) + 1328
6   dyld                          	0x0000000100544824 dyld::loadPhase4(char const*, char const*, dyld::LoadContext const&, unsigned int&, std::__1::vector<char const*, std::__1::allocator<char const*> >*) + 208
7   dyld                          	0x000000010054443c dyld::loadPhase3(char const*, char const*, dyld::LoadContext const&, unsigned int&, std::__1::vector<char const*, std::__1::allocator<char const*> >*) + 856
8   dyld                          	0x0000000100543cf0 dyld::loadPhase1(char const*, char const*, dyld::LoadContext const&, unsigned int&, std::__1::vector<char const*, std::__1::allocator<char const*> >*) + 212
9   dyld                          	0x000000010053be0c dyld::loadPhase0(char const*, char const*, dyld::LoadContext const&, unsigned int&, std::__1::vector<char const*, std::__1::allocator<char const*> >*) + 468
10  dyld                          	0x000000010053b9b0 dyld::load(char const*, dyld::LoadContext const&, unsigned int&) + 196
11  dyld                          	0x000000010054577c dyld::libraryLocator(char const*, bool, char const*, ImageLoader::RPathChain const*, unsigned int&) + 56
12  dyld                          	0x000000010054f9d4 ImageLoader::recursiveLoadLibraries(ImageLoader::LinkContext const&, bool, ImageLoader::RPathChain const&, char const*) + 344
13  dyld                          	0x000000010054e1ac ImageLoader::link(ImageLoader::LinkContext const&, bool, bool, bool, ImageLoader::RPathChain const&, char const*) + 160
14  dyld                          	0x000000010053e5f4 dyld::link(ImageLoader*, bool, bool, ImageLoader::RPathChain const&, unsigned int) + 328
15  dyld                          	0x0000000100540928 dyld::_main(macho_header const*, unsigned long, int, char const**, char const**, char const**, unsigned long*) + 6764
16  dyld                          	0x0000000100539258 dyldbootstrap::start(dyld3::MachOLoaded const*, int, char const**, dyld3::MachOLoaded const*, unsigned long*) + 476
17  dyld                          	0x0000000100539038 _dyld_start + 56

Thread 0 crashed with ARM Thread State (64-bit):
    x0: 0x0000000100338000   x1: 0x000000016fdd5c10   x2: 0x0000000000000c28   x3: 0x0000000000040001
    x4: 0x0000000000000003   x5: 0x0000000000000000   x6: 0x00000001005bc280   x7: 0x0000000000000000
    x8: 0x0000000000000000   x9: 0x000000016fdd6400  x10: 0x0000000000000001  x11: 0x0001803000000000
   x12: 0x0000000000000032  x13: 0x0004000000000000  x14: 0x000000000056f408  x15: 0x000000016fdd6380
   x16: 0x00000000000000c5  x17: 0x0000000000000000  x18: 0x0000000000000000  x19: 0x00000001005c15c0
   x20: 0x0000000000000c38  x21: 0x000000016fdd5c10  x22: 0x0000000100338000  x23: 0x0000000000000003
   x24: 0x000000016fdd6838  x25: 0x000000016fdddd28  x26: 0x000000016fdddea0  x27: 0x000000016fdd5c10
   x28: 0x000000000000000c   fp: 0x000000016fdd5610   lr: 0x0000000100555408
    sp: 0x000000016fdd55d0   pc: 0x0000000100594780 cpsr: 0x20000000
   far: 0x0000000100338000  esr: 0x92000007


Binary Images:
       0x100020000 -        0x100297fff +barrier (2.3.3-release - 2.3.3-release) <D3DCDA20-1DE9-3F42-B036-A87C328F9791> /Users/USER/*/Barrier.app/Contents/MacOS/barrier
       0x100538000 -        0x1005b3fff  dyld (832.7.3) <4AB185B3-DC20-3C03-A193-67C0E6C589D7> /usr/lib/dyld

External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 2797049
    thread_create: 0
    thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=3728K resident=0K(0%) swapped_out_or_unallocated=3728K(100%)
Writable regions: Total=8384K written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=8384K(100%)
 
                                VIRTUAL   REGION 
REGION TYPE                        SIZE    COUNT (non-coalesced) 
===========                     =======  ======= 
STACK GUARD                       56.0M        1 
Stack                             8176K        1 
__DATA                             256K        3 
__DATA_CONST                       208K        2 
__LINKEDIT                         720K        3 
__TEXT                            3024K        2 
mapped file                         16K        1 
===========                     =======  ======= 
TOTAL                             68.1M       13 


I needed to make @caparomula's suggested changes to clean_build.sh to get it to build and additionally had to do the following:

Install both qt and qt5. Barrier looks for qt, not just qt5, and will error out if it's not present.

$ brew install qt qt5 openssl pkg-config

Tell CMake about the location of qt5:

$ export CMAKE_PREFIX_PATH=/opt/homebrew/opt/qt5/

Issue both of @caparomula's suggested patches.

Then build!

$ ./clean_build.sh

Any thoughts on how to fix this?

<!-- gh-comment-id:796184439 --> @zachlatta commented on GitHub (Mar 10, 2021): I was unable to make an M1 native build that launched. I was able to get it to compile, but then got the following error when attempting to launch it (by double clicking on the built `Barrier.app`): ``` Process: barrier [36614] Path: /Users/USER/*/Barrier.app/Contents/MacOS/barrier Identifier: barrier Version: 2.3.3-release (2.3.3-release) Code Type: ARM-64 (Native) Parent Process: ??? [1] Responsible: barrier [36614] User ID: 501 Date/Time: 2021-03-10 10:18:39.148 -0500 OS Version: macOS 11.2.2 (20D80) Report Version: 12 Anonymous UUID: 9CF9DE70-97CA-4210-920E-5AD5E3D1EC2C Sleep/Wake UUID: 6885CD96-C2A3-4C5C-8E21-890195218D06 Time Awake Since Boot: 32000 seconds Time Since Wake: 1000 seconds System Integrity Protection: enabled Crashed Thread: 0 Exception Type: EXC_BAD_ACCESS (Code Signature Invalid) Exception Codes: 0x0000000000000032, 0x0000000100338000 Exception Note: EXC_CORPSE_NOTIFY Termination Reason: Namespace CODESIGNING, Code 0x2 kernel messages: VM Regions Near 0x100338000: __LINKEDIT 1002cc000-100338000 [ 432K] r--/r-- SM=COW /Users/*/Barrier.app/Contents/MacOS/barrier --> mapped file 100338000-10033c000 [ 16K] r--/r-x SM=PRV Object_id=55af5927 __TEXT 100538000-1005b4000 [ 496K] r-x/r-x SM=COW /usr/lib/dyld Application Specific Information: dyld: launch, loading dependent libraries @loader_path/../Frameworks/QtWidgets.framework/Versions/5/QtWidgets Thread 0 Crashed: 0 dyld 0x0000000100594780 bcmp + 16 1 dyld 0x0000000100555408 ImageLoaderMachO::validateFirstPages(linkedit_data_command const*, int, unsigned char const*, unsigned long, long long, ImageLoader::LinkContext const&) + 136 2 dyld 0x000000010055c3b8 ImageLoaderMachOCompressed::instantiateFromFile(char const*, int, unsigned char const*, unsigned long, unsigned long long, unsigned long long, stat const&, unsigned int, unsigned int, linkedit_data_command const*, encryption_info_command const*, ImageLoader::LinkContext const&) + 268 3 dyld 0x0000000100553ffc ImageLoaderMachO::instantiateFromFile(char const*, int, unsigned char const*, unsigned long, unsigned long long, unsigned long long, stat const&, ImageLoader::LinkContext const&) + 172 4 dyld 0x000000010053c290 dyld::loadPhase6(int, stat const&, char const*, dyld::LoadContext const&) + 668 5 dyld 0x0000000100544dd8 dyld::loadPhase5(char const*, char const*, dyld::LoadContext const&, unsigned int&, std::__1::vector<char const*, std::__1::allocator<char const*> >*) + 1328 6 dyld 0x0000000100544824 dyld::loadPhase4(char const*, char const*, dyld::LoadContext const&, unsigned int&, std::__1::vector<char const*, std::__1::allocator<char const*> >*) + 208 7 dyld 0x000000010054443c dyld::loadPhase3(char const*, char const*, dyld::LoadContext const&, unsigned int&, std::__1::vector<char const*, std::__1::allocator<char const*> >*) + 856 8 dyld 0x0000000100543cf0 dyld::loadPhase1(char const*, char const*, dyld::LoadContext const&, unsigned int&, std::__1::vector<char const*, std::__1::allocator<char const*> >*) + 212 9 dyld 0x000000010053be0c dyld::loadPhase0(char const*, char const*, dyld::LoadContext const&, unsigned int&, std::__1::vector<char const*, std::__1::allocator<char const*> >*) + 468 10 dyld 0x000000010053b9b0 dyld::load(char const*, dyld::LoadContext const&, unsigned int&) + 196 11 dyld 0x000000010054577c dyld::libraryLocator(char const*, bool, char const*, ImageLoader::RPathChain const*, unsigned int&) + 56 12 dyld 0x000000010054f9d4 ImageLoader::recursiveLoadLibraries(ImageLoader::LinkContext const&, bool, ImageLoader::RPathChain const&, char const*) + 344 13 dyld 0x000000010054e1ac ImageLoader::link(ImageLoader::LinkContext const&, bool, bool, bool, ImageLoader::RPathChain const&, char const*) + 160 14 dyld 0x000000010053e5f4 dyld::link(ImageLoader*, bool, bool, ImageLoader::RPathChain const&, unsigned int) + 328 15 dyld 0x0000000100540928 dyld::_main(macho_header const*, unsigned long, int, char const**, char const**, char const**, unsigned long*) + 6764 16 dyld 0x0000000100539258 dyldbootstrap::start(dyld3::MachOLoaded const*, int, char const**, dyld3::MachOLoaded const*, unsigned long*) + 476 17 dyld 0x0000000100539038 _dyld_start + 56 Thread 0 crashed with ARM Thread State (64-bit): x0: 0x0000000100338000 x1: 0x000000016fdd5c10 x2: 0x0000000000000c28 x3: 0x0000000000040001 x4: 0x0000000000000003 x5: 0x0000000000000000 x6: 0x00000001005bc280 x7: 0x0000000000000000 x8: 0x0000000000000000 x9: 0x000000016fdd6400 x10: 0x0000000000000001 x11: 0x0001803000000000 x12: 0x0000000000000032 x13: 0x0004000000000000 x14: 0x000000000056f408 x15: 0x000000016fdd6380 x16: 0x00000000000000c5 x17: 0x0000000000000000 x18: 0x0000000000000000 x19: 0x00000001005c15c0 x20: 0x0000000000000c38 x21: 0x000000016fdd5c10 x22: 0x0000000100338000 x23: 0x0000000000000003 x24: 0x000000016fdd6838 x25: 0x000000016fdddd28 x26: 0x000000016fdddea0 x27: 0x000000016fdd5c10 x28: 0x000000000000000c fp: 0x000000016fdd5610 lr: 0x0000000100555408 sp: 0x000000016fdd55d0 pc: 0x0000000100594780 cpsr: 0x20000000 far: 0x0000000100338000 esr: 0x92000007 Binary Images: 0x100020000 - 0x100297fff +barrier (2.3.3-release - 2.3.3-release) <D3DCDA20-1DE9-3F42-B036-A87C328F9791> /Users/USER/*/Barrier.app/Contents/MacOS/barrier 0x100538000 - 0x1005b3fff dyld (832.7.3) <4AB185B3-DC20-3C03-A193-67C0E6C589D7> /usr/lib/dyld External Modification Summary: Calls made by other processes targeting this process: task_for_pid: 0 thread_create: 0 thread_set_state: 0 Calls made by this process: task_for_pid: 0 thread_create: 0 thread_set_state: 0 Calls made by all processes on this machine: task_for_pid: 2797049 thread_create: 0 thread_set_state: 0 VM Region Summary: ReadOnly portion of Libraries: Total=3728K resident=0K(0%) swapped_out_or_unallocated=3728K(100%) Writable regions: Total=8384K written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=8384K(100%) VIRTUAL REGION REGION TYPE SIZE COUNT (non-coalesced) =========== ======= ======= STACK GUARD 56.0M 1 Stack 8176K 1 __DATA 256K 3 __DATA_CONST 208K 2 __LINKEDIT 720K 3 __TEXT 3024K 2 mapped file 16K 1 =========== ======= ======= TOTAL 68.1M 13 ``` I needed to make @caparomula's suggested changes to `clean_build.sh` to get it to build and additionally had to do the following: Install both `qt` and `qt5`. Barrier looks for `qt`, not just `qt5`, and will error out if it's not present. $ brew install qt qt5 openssl pkg-config Tell CMake about the location of `qt5`: $ export CMAKE_PREFIX_PATH=/opt/homebrew/opt/qt5/ Issue both of @caparomula's suggested patches. Then build! $ ./clean_build.sh Any thoughts on how to fix this?
Author
Owner

@caparomula commented on GitHub (Mar 11, 2021):

You need to sign the binary. I'm pretty new to development on Apple devices, and it took me a while to figure it out. Unfortunately, I don't recall the actual steps I took to sign my binary. But basically you need to get a certificate from Apple (I think I did this via xcode using my free developer account), then use the 'codesign' command line tool to sign the binary. Be sure to do a 'deep' signing so it gets all of the contents. I wish I could give you more specific details, but it's one of those things I just sort of figured out and then promptly forgot. But you should be able to figure it out with a little googling and experimentation. Or maybe someone with a bit more savvy can chime in.

<!-- gh-comment-id:796683418 --> @caparomula commented on GitHub (Mar 11, 2021): You need to sign the binary. I'm pretty new to development on Apple devices, and it took me a while to figure it out. Unfortunately, I don't recall the actual steps I took to sign my binary. But basically you need to get a certificate from Apple (I think I did this via xcode using my free developer account), then use the 'codesign' command line tool to sign the binary. Be sure to do a 'deep' signing so it gets all of the contents. I wish I could give you more specific details, but it's one of those things I just sort of figured out and then promptly forgot. But you should be able to figure it out with a little googling and experimentation. Or maybe someone with a bit more savvy can chime in.
Author
Owner

@fdelucchijr commented on GitHub (Jul 7, 2021):

@zachlatta I'm trying to build it too... gets me to the same error... PD: your building for DEBUG, for release, you really gonna need Signing as @caparomula is saying.

Maybe someone more savvy can help us (im not a PC/Mac programmer so y really don't know).

I'm using this wiki:
https://github.com/debauchee/barrier-wiki/blob/master/Building-on-macOS.md
And this #1162 PR as src.

Same Namespace CODESIGNING, Code 0x2 error.

<!-- gh-comment-id:876000102 --> @fdelucchijr commented on GitHub (Jul 7, 2021): @zachlatta I'm trying to build it too... gets me to the same error... PD: your building for DEBUG, for release, you really gonna need Signing as @caparomula is saying. Maybe someone more savvy can help us (im not a PC/Mac programmer so y really don't know). I'm using this wiki: https://github.com/debauchee/barrier-wiki/blob/master/Building-on-macOS.md And this #1162 PR as src. Same ` Namespace CODESIGNING, Code 0x2` error.
Author
Owner

@palkoc commented on GitHub (Aug 27, 2021):

Hi all,
I faced the same problem and the solution stays in what @caporomula says in his note. Once the clean_build.sh is over, go to <barrier_repo>>/build/bundle and sign Barrier.app, or install Barrier.app from .dmg and sign it there:

➜  bundle git:(master) ✗ codesign --force --deep --sign - /Applications/Barrier.app 
/Applications/Barrier.app: replacing existing signature
➜  bundle git:(master)

Then you can launch /Applications/Barrier.app and everything should work.

<!-- gh-comment-id:907273209 --> @palkoc commented on GitHub (Aug 27, 2021): Hi all, I faced the same problem and the solution stays in what @caporomula says in his note. Once the ```clean_build.sh``` is over, go to ```<barrier_repo>>/build/bundle``` and sign ```Barrier.app```, or install Barrier.app from .dmg and sign it there: ```bash ➜ bundle git:(master) ✗ codesign --force --deep --sign - /Applications/Barrier.app /Applications/Barrier.app: replacing existing signature ➜ bundle git:(master) ✗ ``` Then you can launch /Applications/Barrier.app and everything should work.
Author
Owner

@fdelucchijr commented on GitHub (Sep 1, 2021):

➜  bundle git:(master) ✗ codesign --force --deep --sign - /Applications/Barrier.app 
/Applications/Barrier.app: replacing existing signature

YES! It work flawless!!!

<!-- gh-comment-id:910659153 --> @fdelucchijr commented on GitHub (Sep 1, 2021): > ```shell > ➜ bundle git:(master) ✗ codesign --force --deep --sign - /Applications/Barrier.app > /Applications/Barrier.app: replacing existing signature > ``` YES! It work flawless!!!
Author
Owner

@vivaanmathur commented on GitHub (Oct 13, 2021):

Unable to build.


Undefined symbols for architecture arm64:
  "_BIO_ctrl", referenced from:
      SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o
  "_BIO_free_all", referenced from:
      SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o
  "_BIO_new", referenced from:
      SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o
  "_BIO_s_file", referenced from:
      SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o
  "_ERR_load_BIO_strings", referenced from:
      SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o
  "_EVP_PKEY_free", referenced from:
      SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o
  "_EVP_PKEY_get_bits", referenced from:
      SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o
  "_EVP_PKEY_get_id", referenced from:
      SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o
  "_EVP_PKEY_type", referenced from:
      SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o
  "_OPENSSL_init_crypto", referenced from:
      SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o
  "_PEM_read_bio_X509", referenced from:
      SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o
  "_X509_free", referenced from:
      SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o
  "_X509_get_pubkey", referenced from:
      SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [bin/barrier] Error 1
make[1]: *** [src/gui/CMakeFiles/barrier.dir/all] Error 2
make: *** [all] Error 2

<!-- gh-comment-id:942350804 --> @vivaanmathur commented on GitHub (Oct 13, 2021): Unable to build. ``` Undefined symbols for architecture arm64: "_BIO_ctrl", referenced from: SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o "_BIO_free_all", referenced from: SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o "_BIO_new", referenced from: SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o "_BIO_s_file", referenced from: SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o "_ERR_load_BIO_strings", referenced from: SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o "_EVP_PKEY_free", referenced from: SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o "_EVP_PKEY_get_bits", referenced from: SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o "_EVP_PKEY_get_id", referenced from: SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o "_EVP_PKEY_type", referenced from: SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o "_OPENSSL_init_crypto", referenced from: SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o "_PEM_read_bio_X509", referenced from: SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o "_X509_free", referenced from: SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o "_X509_get_pubkey", referenced from: SslCertificate::isCertificateValid(QString const&) in SslCertificate.cpp.o ld: symbol(s) not found for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[2]: *** [bin/barrier] Error 1 make[1]: *** [src/gui/CMakeFiles/barrier.dir/all] Error 2 make: *** [all] Error 2 ```
Author
Owner

@arthurlockman commented on GitHub (Nov 12, 2021):

I just got it to work with the modifications suggested above.

In clean_build.sh, change the build target to macOS 12.0:

B_CMAKE_FLAGS="-DCMAKE_OSX_SYSROOT=$(xcode-select --print-path)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=12.0 $B_CMAKE_FLAGS"

In CMakeLists.txt, replace:

-    elseif (IS_DIRECTORY /usr/local/opt/openssl AND BREW_PROGRAM)
-        # brew
-        set (OPENSSL_ROOT /usr/local/opt/openssl)
+    elseif (BREW_PROGRAM)
+       exec_program(brew ARGS "--prefix openssl" OUTPUT_VARIABLE OPENSSL_ROOT)

Then once it's built:

cp ./build/bundle/Barrier.app /Applications/Barrier.app
codesign --force --deep --sign - /Applications/Barrier.app 

Should be all you have to do to get it working. If you enable 20 threads on the make command on an M1 Max, the whole thing builds in under 30 seconds. 😃

<!-- gh-comment-id:967382235 --> @arthurlockman commented on GitHub (Nov 12, 2021): I just got it to work with the modifications suggested above. In `clean_build.sh`, change the build target to macOS 12.0: ``` B_CMAKE_FLAGS="-DCMAKE_OSX_SYSROOT=$(xcode-select --print-path)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=12.0 $B_CMAKE_FLAGS" ``` In `CMakeLists.txt`, replace: ``` - elseif (IS_DIRECTORY /usr/local/opt/openssl AND BREW_PROGRAM) - # brew - set (OPENSSL_ROOT /usr/local/opt/openssl) + elseif (BREW_PROGRAM) + exec_program(brew ARGS "--prefix openssl" OUTPUT_VARIABLE OPENSSL_ROOT) ``` Then once it's built: ``` cp ./build/bundle/Barrier.app /Applications/Barrier.app codesign --force --deep --sign - /Applications/Barrier.app ``` Should be all you have to do to get it working. If you enable 20 threads on the `make` command on an M1 Max, the whole thing builds in under 30 seconds. 😃
Author
Owner

@Cherrymelon commented on GitHub (Dec 15, 2021):

I just got it to work with the modifications suggested above.

In clean_build.sh, change the build target to macOS 12.0:

B_CMAKE_FLAGS="-DCMAKE_OSX_SYSROOT=$(xcode-select --print-path)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=12.0 $B_CMAKE_FLAGS"

In CMakeLists.txt, replace:

-    elseif (IS_DIRECTORY /usr/local/opt/openssl AND BREW_PROGRAM)
-        # brew
-        set (OPENSSL_ROOT /usr/local/opt/openssl)
+    elseif (BREW_PROGRAM)
+       exec_program(brew ARGS "--prefix openssl" OUTPUT_VARIABLE OPENSSL_ROOT)

Then once it's built:

cp ./build/bundle/Barrier.app /Applications/Barrier.app
codesign --force --deep --sign - /Applications/Barrier.app 

Should be all you have to do to get it working. If you enable 20 threads on the make command on an M1 Max, the whole thing builds in under 30 seconds. 😃

I run it,but terminal tell me "Please install xcode" ,if i want to build it ,i have to install more than 60gb xocde?

<!-- gh-comment-id:994420818 --> @Cherrymelon commented on GitHub (Dec 15, 2021): > I just got it to work with the modifications suggested above. > > In `clean_build.sh`, change the build target to macOS 12.0: > > ``` > B_CMAKE_FLAGS="-DCMAKE_OSX_SYSROOT=$(xcode-select --print-path)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=12.0 $B_CMAKE_FLAGS" > ``` > > In `CMakeLists.txt`, replace: > > ``` > - elseif (IS_DIRECTORY /usr/local/opt/openssl AND BREW_PROGRAM) > - # brew > - set (OPENSSL_ROOT /usr/local/opt/openssl) > + elseif (BREW_PROGRAM) > + exec_program(brew ARGS "--prefix openssl" OUTPUT_VARIABLE OPENSSL_ROOT) > ``` > > Then once it's built: > > ``` > cp ./build/bundle/Barrier.app /Applications/Barrier.app > codesign --force --deep --sign - /Applications/Barrier.app > ``` > > Should be all you have to do to get it working. If you enable 20 threads on the `make` command on an M1 Max, the whole thing builds in under 30 seconds. 😃 I run it,but terminal tell me "Please install xcode" ,if i want to build it ,i have to install more than 60gb xocde?
Author
Owner

@vivaanmathur commented on GitHub (Dec 15, 2021):

Obviously, you need Xcode for all macOS development.

<!-- gh-comment-id:994436320 --> @vivaanmathur commented on GitHub (Dec 15, 2021): Obviously, you need Xcode for all macOS development.
Author
Owner

@Rahul-fix commented on GitHub (Jan 11, 2022):

I am trying to compile it on M1 mac using the instruction above but I am getting the following error:
OS: macOS 12.1 21C52 arm64
Xcode Version: 13.2.1 (13C100)
CMake: 3.22.1

CMakeError.log
CMakeOutput.log

<!-- gh-comment-id:1009727109 --> @Rahul-fix commented on GitHub (Jan 11, 2022): I am trying to compile it on M1 mac using the instruction above but I am getting the following error: OS: macOS 12.1 21C52 arm64 Xcode Version: 13.2.1 (13C100) CMake: 3.22.1 [CMakeError.log](https://github.com/debauchee/barrier/files/7845013/CMakeError.log) [CMakeOutput.log](https://github.com/debauchee/barrier/files/7845014/CMakeOutput.log)
Author
Owner

@Rahul-fix commented on GitHub (Jan 16, 2022):

I am trying to compile it on M1 mac using the instruction above but I am getting the following error: OS: macOS 12.1 21C52 arm64 Xcode Version: 13.2.1 (13C100) CMake: 3.22.1

CMakeError.log CMakeOutput.log

https://github.com/debauchee/barrier/issues/960#issuecomment-967382235

The build is working now after some modification to the path of SDK in clean_build.sh:
From:
B_CMAKE_FLAGS="-DCMAKE_OSX_SYSROOT=$(xcode-select --print-path)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=12.0 $B_CMAKE_FLAGS"
To:
B_CMAKE_FLAGS="-DCMAKE_OSX_SYSROOT=$(xcode-select --print-path)/SDKs/MacOSX.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=12.1 $B_CMAKE_FLAGS"

Somehow the build was not not working when copying the bundle/Barrier.app to /Application/Barrier.app and
signing the application.

It worked when I build with release which gave the file Barrier.dmg:
In order to build a Barrier.dmg run below command:
export B_BUILD_TYPE=Release ./clean_build.sh
and then install the application. Also, sign the application with following:
codesign --force --deep --sign - /Applications/Barrier.app
Now open the Barrier and Hopefully it will work!

<!-- gh-comment-id:1013877893 --> @Rahul-fix commented on GitHub (Jan 16, 2022): > I am trying to compile it on M1 mac using the instruction above but I am getting the following error: OS: macOS 12.1 21C52 arm64 Xcode Version: 13.2.1 (13C100) CMake: 3.22.1 > > [CMakeError.log](https://github.com/debauchee/barrier/files/7845013/CMakeError.log) [CMakeOutput.log](https://github.com/debauchee/barrier/files/7845014/CMakeOutput.log) > https://github.com/debauchee/barrier/issues/960#issuecomment-967382235 The build is working now after some modification to the path of SDK in `clean_build.sh`: From: `B_CMAKE_FLAGS="-DCMAKE_OSX_SYSROOT=$(xcode-select --print-path)/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=12.0 $B_CMAKE_FLAGS"` To: `B_CMAKE_FLAGS="-DCMAKE_OSX_SYSROOT=$(xcode-select --print-path)/SDKs/MacOSX.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=12.1 $B_CMAKE_FLAGS"` > Somehow the build was not not working when *copying* the `bundle/Barrier.app` to `/Application/Barrier.app` and signing the application. It worked when I build with *release* which gave the file `Barrier.dmg`: In order to build a Barrier.dmg run below command: `export B_BUILD_TYPE=Release ./clean_build.sh ` and then install the application. Also, sign the application with following: `codesign --force --deep --sign - /Applications/Barrier.app` Now open the Barrier and Hopefully it will work!
Author
Owner

@shaga82 commented on GitHub (Jan 31, 2022):

Would it be possible for those who was able to compile it for apple silicon, to share the dmg version.
Internet connection in my country sucks and downloading full Xcode is problematic here.
I downloaded Xcode command line version, which took me 3 days, but that was not enough apparently.

<!-- gh-comment-id:1025761627 --> @shaga82 commented on GitHub (Jan 31, 2022): Would it be possible for those who was able to compile it for apple silicon, to share the dmg version. Internet connection in my country sucks and downloading full Xcode is problematic here. I downloaded Xcode command line version, which took me 3 days, but that was not enough apparently.
Author
Owner

@thejasonfisher commented on GitHub (Feb 11, 2022):

Added a version/SDK test to this and just opened a pull request for the changes -- works perfectly here on my M1 MacBook Air as an Apple Silicon app in macOS Monterey 12.2.1.

https://github.com/debauchee/barrier/pull/1562

Published a pre-release off my fork that someone can test:

https://github.com/thejasonfisher/barrier/releases/download/macos-monterey-fixes/barrier-2.4.0-macOS-12.0-arm64-test.zip

<!-- gh-comment-id:1036095281 --> @thejasonfisher commented on GitHub (Feb 11, 2022): Added a version/SDK test to this and just opened a pull request for the changes -- works perfectly here on my M1 MacBook Air as an Apple Silicon app in macOS Monterey 12.2.1. https://github.com/debauchee/barrier/pull/1562 Published a pre-release off my fork that someone can test: https://github.com/thejasonfisher/barrier/releases/download/macos-monterey-fixes/barrier-2.4.0-macOS-12.0-arm64-test.zip
Author
Owner

@shaga82 commented on GitHub (Feb 11, 2022):

thank you Jason. it works perfectly and can confirm that it uses apple silicon on my Macbook Pro with M1 chip in Monterey 12.1.

<!-- gh-comment-id:1036269211 --> @shaga82 commented on GitHub (Feb 11, 2022): thank you Jason. it works perfectly and can confirm that it uses apple silicon on my Macbook Pro with M1 chip in Monterey 12.1.
Author
Owner

@anosognosia commented on GitHub (Feb 11, 2022):

@thejasonfisher thank you!

<!-- gh-comment-id:1036476158 --> @anosognosia commented on GitHub (Feb 11, 2022): @thejasonfisher thank you!
Author
Owner

@amalp12 commented on GitHub (Mar 9, 2022):

Please add support as soon as possible. It is showing system call error when I try to use my Macbook air with M1 chip as a server on client's side.

<!-- gh-comment-id:1062600367 --> @amalp12 commented on GitHub (Mar 9, 2022): Please add support as soon as possible. It is showing system call error when I try to use my Macbook air with M1 chip as a server on client's side.
Author
Owner

@amalp12 commented on GitHub (Mar 9, 2022):

Added a version/SDK test to this and just opened a pull request for the changes -- works perfectly here on my M1 MacBook Air as an Apple Silicon app in macOS Monterey 12.2.1.

#1562

Published a pre-release off my fork that someone can test:

https://github.com/thejasonfisher/barrier/releases/download/macos-monterey-fixes/barrier-2.4.0-macOS-12.0-arm64-test.zip

This works perfectly, Thanks Jason

<!-- gh-comment-id:1062604604 --> @amalp12 commented on GitHub (Mar 9, 2022): > Added a version/SDK test to this and just opened a pull request for the changes -- works perfectly here on my M1 MacBook Air as an Apple Silicon app in macOS Monterey 12.2.1. > > #1562 > > Published a pre-release off my fork that someone can test: > > https://github.com/thejasonfisher/barrier/releases/download/macos-monterey-fixes/barrier-2.4.0-macOS-12.0-arm64-test.zip This works perfectly, Thanks Jason
Author
Owner

@warrendt commented on GitHub (Mar 24, 2022):

This works on my Mac M1 Mini running 12.3 Thanks Jason, you are a legend

<!-- gh-comment-id:1077421696 --> @warrendt commented on GitHub (Mar 24, 2022): This works on my Mac M1 Mini running 12.3 Thanks Jason, you are a legend
Author
Owner

@emacstheviking commented on GitHub (May 12, 2022):

Confirming Jason is a legend. Feels smoother too, less laggy. @thejasonfisher

<!-- gh-comment-id:1124689303 --> @emacstheviking commented on GitHub (May 12, 2022): Confirming Jason is a legend. Feels smoother too, less laggy. @thejasonfisher
Author
Owner

@gltanaka commented on GitHub (Sep 15, 2022):

I can confirm it also works on a M1 Max

Here is the exact command sequence:
git clone https://github.com/debauchee/barrier.git
cd barrier
gh pr checkout 1562
xcode-select --install
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
sudo xcodebuild -license
brew install openssl
bash clean_build.sh

Then copy the build/bin/barrier.app to /Applications:
codesign -f -s "TYPE_YOUR_DEVELOPER_SIG_HERE" --deep /Applications/Barrier.app

You might need to go to developer.apple.com and get your developer certificate if you haven't compiled an apple app before.

<!-- gh-comment-id:1248646747 --> @gltanaka commented on GitHub (Sep 15, 2022): I can confirm it also works on a M1 Max Here is the exact command sequence: git clone https://github.com/debauchee/barrier.git cd barrier gh pr checkout 1562 xcode-select --install sudo xcode-select -s /Applications/Xcode.app/Contents/Developer sudo xcodebuild -license brew install openssl bash clean_build.sh Then copy the build/bin/barrier.app to /Applications: codesign -f -s "TYPE_YOUR_DEVELOPER_SIG_HERE" --deep /Applications/Barrier.app You might need to go to developer.apple.com and get your developer certificate if you haven't compiled an apple app before.
Author
Owner

@richstokes commented on GitHub (Sep 22, 2022):

^^ This seemed to work for me, except I also had to brew install cmake qt qt5 before bash clean_build.sh in the steps above.

Then I did:

cp -Rv build/bundle/Barrier.app /Applications/Barrier.app
codesign --force --deep --sign - /Applications/Barrier.app

And seems good!

<!-- gh-comment-id:1255215246 --> @richstokes commented on GitHub (Sep 22, 2022): ^^ This seemed to work for me, except I also had to `brew install cmake qt qt5` before `bash clean_build.sh` in the steps above. Then I did: ``` cp -Rv build/bundle/Barrier.app /Applications/Barrier.app codesign --force --deep --sign - /Applications/Barrier.app ``` And seems good!
Author
Owner

@zirho commented on GitHub (Sep 30, 2022):

This worked for me combining all above.
Thanks a lot guys!

brew install cmake qt qt5 openssl

git clone https://github.com/debauchee/barrier.git
cd barrier
git checkout afe950d1

xcode-select --install
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
sudo xcodebuild -license

bash clean_build.sh

cp -Rv build/bundle/Barrier.app /Applications/Barrier.app
codesign --force --deep --sign - /Applications/Barrier.app
open /Applications/Barrier.app
<!-- gh-comment-id:1263827223 --> @zirho commented on GitHub (Sep 30, 2022): This worked for me combining all above. Thanks a lot guys! ``` brew install cmake qt qt5 openssl git clone https://github.com/debauchee/barrier.git cd barrier git checkout afe950d1 xcode-select --install sudo xcode-select -s /Applications/Xcode.app/Contents/Developer sudo xcodebuild -license bash clean_build.sh cp -Rv build/bundle/Barrier.app /Applications/Barrier.app codesign --force --deep --sign - /Applications/Barrier.app open /Applications/Barrier.app ```
Author
Owner

@jandykwan commented on GitHub (Oct 19, 2022):

how to do if no 'TYPE_YOUR_DEVELOPER_SIG_HERE'

<!-- gh-comment-id:1283696309 --> @jandykwan commented on GitHub (Oct 19, 2022): how to do if no 'TYPE_YOUR_DEVELOPER_SIG_HERE'
Author
Owner

@panoslympe commented on GitHub (Dec 15, 2022):

can someone please, compile it, and upload it to a google drive or whatever? :D

<!-- gh-comment-id:1353076210 --> @panoslympe commented on GitHub (Dec 15, 2022): can someone please, compile it, and upload it to a google drive or whatever? :D
Author
Owner

@junbujianwpl commented on GitHub (Apr 18, 2023):

https://github.com/debauchee/barrier/issues/1395.
Maybe everyone who wants an arm release should check this thread. Qt5 not support arm. Only by migrating to Qt6, an arm release can be made. Some comments above may be misleading.
Though building on arm mac maybe success, and the executable is runable.

<!-- gh-comment-id:1512413306 --> @junbujianwpl commented on GitHub (Apr 18, 2023): https://github.com/debauchee/barrier/issues/1395. Maybe everyone who wants an `arm` release should check this thread. `Qt5` not support `arm`. Only by migrating to `Qt6`, an `arm` release can be made. Some comments above may be misleading. Though building on `arm` mac maybe success, and the executable is runable.
Author
Owner

@joshin42 commented on GitHub (Apr 18, 2023):

I've successfully built both barrier, and now InputLeap (the supported fork) on M1 Mac w/o too much trouble.

If you have all the bits and pieces needed to build installed with HomeBrew, I think all I had to do was to change the Deployment Target to 13.1 in the "clean_build.sh" file.

Edited to add:

I don't really know what I'm doing, but if you want to join the fun, here's my most recent build: https://1drv.ms/f/s!AioKbdTrI-m1gZxLsCeYXmHIo0wkdQ?e=aLBq78

Download the .app file, and install it in Applications. Please have a backup and don't yell at me if it turns your dog into a sloth

Edit 2: I tried creating a 'Release Build' - DMG file here -> https://1drv.ms/u/s!AioKbdTrI-m1gZ0VfUFNH-fIR2xDog?e=vAimV3

-J

<!-- gh-comment-id:1513743649 --> @joshin42 commented on GitHub (Apr 18, 2023): I've successfully built both barrier, and now InputLeap (the supported fork) on M1 Mac w/o too much trouble. If you have all the bits and pieces needed to build installed with HomeBrew, I think all I had to do was to change the Deployment Target to 13.1 in the "clean_build.sh" file. Edited to add: I don't really know what I'm doing, but if you want to join the fun, here's my most recent build: https://1drv.ms/f/s!AioKbdTrI-m1gZxLsCeYXmHIo0wkdQ?e=aLBq78 Download the .app file, and install it in Applications. Please have a backup and don't yell at me if it turns your dog into a sloth Edit 2: I tried creating a 'Release Build' - DMG file here -> https://1drv.ms/u/s!AioKbdTrI-m1gZ0VfUFNH-fIR2xDog?e=vAimV3 -J
Author
Owner

@Traace commented on GitHub (May 25, 2023):

@joshin42 the 'Release Build' crashs for me because the signature is invalid. Didn't tested the debug build tho.

Edit: I just codesign it with my self signed dev certificate. Works fine now.

<!-- gh-comment-id:1562590928 --> @Traace commented on GitHub (May 25, 2023): @joshin42 the 'Release Build' crashs for me because the signature is invalid. Didn't tested the debug build tho. Edit: I just codesign it with my self signed dev certificate. Works fine now.
Author
Owner

@AlexandreSout0 commented on GitHub (Jun 6, 2024):

^^ This seemed to work for me, except I also had to brew install cmake qt qt5 before bash clean_build.sh in the steps above.

Then I did:

cp -Rv build/bundle/Barrier.app /Applications/Barrier.app
codesign --force --deep --sign - /Applications/Barrier.app

And seems good!

Tanks for its. Works for me.

<!-- gh-comment-id:2153311799 --> @AlexandreSout0 commented on GitHub (Jun 6, 2024): > ^^ This seemed to work for me, except I also had to `brew install cmake qt qt5` before `bash clean_build.sh` in the steps above. > > Then I did: > > ``` > cp -Rv build/bundle/Barrier.app /Applications/Barrier.app > codesign --force --deep --sign - /Applications/Barrier.app > ``` > > And seems good! Tanks for its. Works for me.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/barrier#771
No description provided.