lastpass / lastpass-cli

LastPass command line interface tool
GNU General Public License v2.0
2.85k stars 292 forks source link

Does not build under Cygwin #578

Closed hackdefendr closed 3 years ago

hackdefendr commented 3 years ago

Windows 10 Pro (Version 2004, OS Build 19041.572) Cygwin (Latest version, fresh install)

The compile hits 100% then crashes while linking lpass.exe.

[100%] Linking C executable lpass.exe
/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: CMakeFiles/lpass.dir/cmd-login.c.o:cmd-login.c:(.bss+0x0): multiple definition of `ARGC'; CMakeFiles/lpass.dir/agent.c.o:agent.c:(.bss+0x0): first defined here
/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: CMakeFiles/lpass.dir/cmd-login.c.o:cmd-login.c:(.bss+0x8): multiple definition of `ARGV'; CMakeFiles/lpass.dir/agent.c.o:agent.c:(.bss+0x8): first defined here
/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: CMakeFiles/lpass.dir/cmd-share.c.o:cmd-share.c:(.bss+0x0): multiple definition of `ARGC'; CMakeFiles/lpass.dir/agent.c.o:agent.c:(.bss+0x0): first defined here
/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: CMakeFiles/lpass.dir/cmd-share.c.o:cmd-share.c:(.bss+0x8): multiple definition of `ARGV'; CMakeFiles/lpass.dir/agent.c.o:agent.c:(.bss+0x8): first defined here
/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: CMakeFiles/lpass.dir/cmd.c.o:cmd.c:(.bss+0x0): multiple definition of `ARGC'; CMakeFiles/lpass.dir/agent.c.o:agent.c:(.bss+0x0): first defined here
/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: CMakeFiles/lpass.dir/cmd.c.o:cmd.c:(.bss+0x8): multiple definition of `ARGV'; CMakeFiles/lpass.dir/agent.c.o:agent.c:(.bss+0x8): first defined here
/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: CMakeFiles/lpass.dir/lpass.c.o:lpass.c:(.bss+0x0): multiple definition of `ARGC'; CMakeFiles/lpass.dir/agent.c.o:agent.c:(.bss+0x0): first defined here
/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: CMakeFiles/lpass.dir/lpass.c.o:lpass.c:(.bss+0x8): multiple definition of `ARGV'; CMakeFiles/lpass.dir/agent.c.o:agent.c:(.bss+0x8): first defined here
/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: CMakeFiles/lpass.dir/process.c.o:process.c:(.bss+0x0): multiple definition of `ARGC'; CMakeFiles/lpass.dir/agent.c.o:agent.c:(.bss+0x0): first defined here
/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: CMakeFiles/lpass.dir/process.c.o:process.c:(.bss+0x8): multiple definition of `ARGV'; CMakeFiles/lpass.dir/agent.c.o:agent.c:(.bss+0x8): first defined here
/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: CMakeFiles/lpass.dir/upload-queue.c.o:upload-queue.c:(.bss+0x0): multiple definition of `ARGC'; CMakeFiles/lpass.dir/agent.c.o:agent.c:(.bss+0x0): first defined here
/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: CMakeFiles/lpass.dir/upload-queue.c.o:upload-queue.c:(.bss+0x8): multiple definition of `ARGV'; CMakeFiles/lpass.dir/agent.c.o:agent.c:(.bss+0x8): first defined here
/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: CMakeFiles/lpass.dir/util.c.o:util.c:(.bss+0x0): multiple definition of `ARGC'; CMakeFiles/lpass.dir/agent.c.o:agent.c:(.bss+0x0): first defined here
/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: CMakeFiles/lpass.dir/util.c.o:util.c:(.bss+0x8): multiple definition of `ARGV'; CMakeFiles/lpass.dir/agent.c.o:agent.c:(.bss+0x8): first defined here
collect2: error: ld returned 1 exit status
make[3]: *** [CMakeFiles/lpass.dir/build.make:708: lpass.exe] Error 1
make[3]: Leaving directory '/home/jeff/lastpass-cli/build'
make[2]: *** [CMakeFiles/Makefile2:236: CMakeFiles/lpass.dir/all] Error 2
make[2]: Leaving directory '/home/jeff/lastpass-cli/build'
make[1]: *** [Makefile:161: all] Error 2
make[1]: Leaving directory '/home/jeff/lastpass-cli/build'
make: *** [Makefile:8: all] Error 2

So this officially does not work under Windows at all.

apiology commented 3 years ago

I suspect this is related to #576, if not fixed by it.

hackdefendr commented 3 years ago

Thanks. Testing this now.

hackdefendr commented 3 years ago

Confirmed PR #576 fixes this.