Ubuntu builds fail with missing symbols
Describe the bug When following the build instructions for Ubuntu 17.04 (as described on the Lightwave Wiki), builds fail because of missing symbols that appear to be Windows specific.
Impact
- [ ] Low - Not really in your way but annoyance
- [ ] Medium - Can be worked around
- [ X ] High - Blocker
Expected behavior I expected the build to complete without errors.
Observed behavior The build fails with the following message:
/bin/bash ../../libtool --tag=CC --mode=link gcc -Wall -Werror -fno-strict-aliasing -Wall -Werror -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-implicit-function-declaration -Wno-address -Wno-enum-compare -L/opt/likewise/lib64 -Wl,-rpath,/opt/likewise/lib64 -Wl,-rpath-link,/opt/likewise/lib64 -ldl -o vmcommon_test vmcommon_test-countertest.o vmcommon_test-gaugetest.o vmcommon_test-histogramtest.o vmcommon_test-mixedtest.o vmcommon_test-vmhttpclienttest.o vmcommon_test-vmsignaturetest.o vmcommon_test-vmjsonresulttest.o vmcommon_test-main.o ../../vmcommon/libvmcommon.la -llwbase -llwbase_nothr -ldl
libtool: link: gcc -Wall -Werror -fno-strict-aliasing -Wall -Werror -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-implicit-function-declaration -Wno-address -Wno-enum-compare -Wl,-rpath -Wl,/opt/likewise/lib64 -Wl,-rpath-link -Wl,/opt/likewise/lib64 -o .libs/vmcommon_test vmcommon_test-countertest.o vmcommon_test-gaugetest.o vmcommon_test-histogramtest.o vmcommon_test-mixedtest.o vmcommon_test-vmhttpclienttest.o vmcommon_test-vmsignaturetest.o vmcommon_test-vmjsonresulttest.o vmcommon_test-main.o -L/opt/likewise/lib64 ../../vmcommon/.libs/libvmcommon.so /opt/likewise/lib64/liblwbase.so /opt/likewise/lib64/liblwbase_nothr.so -ldl -pthread -Wl,-rpath -Wl,/opt/vmware/lib64 -Wl,-rpath -Wl,/opt/likewise/lib64
../../vmcommon/.libs/libvmcommon.so: undefined reference to `LwInterlockedIncrement64'
../../vmcommon/.libs/libvmcommon.so: undefined reference to `LwInterlockedSubtract64'
../../vmcommon/.libs/libvmcommon.so: undefined reference to `LwInterlockedAdd64'
../../vmcommon/.libs/libvmcommon.so: undefined reference to `LwInterlockedDecrement64'
../../vmcommon/.libs/libvmcommon.so: undefined reference to `LwInterlockedExchange64'```
These appear to be Windows symbols. I'm not aware of a library that provides them for Linux.
To Reproduce Follow the provided instructions for installing Lightwave on Ubuntu as described here on a clean VM of Ubuntu 17.10.
Environment:
- OS: Ubuntu 17.10, as a Virtualbox VM provisioned by Vagrant
- Lightwave Version: From source at commit
55ebc8ee243c5b28d0a155c4a3364236b1f02048 - Likewise version: 6.2.11
Andrew, likewise-open package has updated to add these functions. I think new deb files are not updated to bintray yet. You can build likewise-open by yourself to avoid this. I will check with Jonathan to upload new likewise-open version to bintray.
Thanks! I'll give building open-likewise from scratch a try.