I first tried a go get and then built my project, but got some issues. So I build libui:
cloned latest commit: cda991b7e252874ce69ccdb7d1a40de49cee5839
mkdir build && cd build
cmake .. -DBUILD_SHARED_LIBS=OFF
make
cp out/libui.a ~/go/src/github.com/andlabs/ui/libui_darwin_amd64.a
And then run go build in my project and got the following:
/usr/local/Cellar/go/1.10.3/libexec/pkg/tool/darwin_amd64/link: running clang++ failed: exit status 1
clang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of OS X 10.9 [-Wdeprecated]
ld: warning: object file (/tmp/go-link-382467271/000024.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000025.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000026.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000027.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000028.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000029.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000030.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000031.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000032.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000033.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000034.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000035.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000036.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000037.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000038.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000039.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000040.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000041.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000042.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000043.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000044.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000045.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000046.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000047.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000048.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000049.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000050.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000051.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000052.o) was built for newer OSX version (10.13) than being linked (10.8)
ld: warning: object file (/tmp/go-link-382467271/000053.o) was built for newer OSX version (10.13) than being linked (10.8)
Undefined symbols for architecture x86_64:
"std::__1::__vector_base_common<true>::__throw_length_error() const", referenced from:
void std::__1::vector<cv::Mat, std::__1::allocator<cv::Mat> >::__push_back_slow_path<cv::Mat const&>(cv::Mat const&&&) in 000036.o
_Image_IMDecode in 000040.o
void std::__1::vector<int, std::__1::allocator<int> >::__push_back_slow_path<int const&>(int const&&&) in 000040.o
_FillPoly in 000041.o
_DrawContours in 000041.o
void std::__1::vector<cv::Point_<int>, std::__1::allocator<cv::Point_<int> > >::__push_back_slow_path<cv::Point_<int> >(cv::Point_<int>&&) in 000041.o
void std::__1::vector<std::__1::vector<cv::Point_<int>, std::__1::allocator<cv::Point_<int> > >, std::__1::allocator<std::__1::vector<cv::Point_<int>, std::__1::allocator<cv::Point_<int> > > > >::__push_back_slow_path<std::__1::vector<cv::Point_<int>, std::__1::allocator<cv::Point_<int> > > const&>(std::__1::vector<cv::Point_<int>, std::__1::allocator<cv::Point_<int> > > const&&&) in 000041.o
...
"std::logic_error::logic_error(char const*)", referenced from:
void std::__1::vector<int, std::__1::allocator<int> >::__push_back_slow_path<int const&>(int const&&&) in 000040.o
void std::__1::vector<cv::Point_<int>, std::__1::allocator<cv::Point_<int> > >::__push_back_slow_path<cv::Point_<int> >(cv::Point_<int>&&) in 000041.o
void std::__1::vector<cv::Point_<float>, std::__1::allocator<cv::Point_<float> > >::__push_back_slow_path<cv::Point_<float> >(cv::Point_<float>&&) in 000041.o
void std::__1::vector<cv::Rect_<int>, std::__1::allocator<cv::Rect_<int> > >::__push_back_slow_path<cv::Rect_<int> const&>(cv::Rect_<int> const&&&) in 000042.o
"_uiDrawFontFamiliesFamily", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawFontFamiliesFamily in 000009.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawFontFamiliesFamily)
"_uiDrawFontFamiliesNumFamilies", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawFontFamiliesNumFamilies in 000009.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawFontFamiliesNumFamilies)
"_uiDrawFreeFontFamilies", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawFreeFontFamilies in 000009.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawFreeFontFamilies)
"_uiDrawFreeTextFont", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawFreeTextFont in 000009.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawFreeTextFont)
"_uiDrawListFontFamilies", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawListFontFamilies in 000009.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawListFontFamilies)
"_uiDrawLoadClosestFont", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_newFont in 000009.o
"_uiDrawTextFontGetMetrics", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawTextFontGetMetrics in 000009.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawTextFontGetMetrics)
"_uiDrawTextFontHandle", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawTextFontHandle in 000009.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawTextFontHandle)
"_uiDrawTextLayoutSetWidth", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawTextLayoutSetWidth in 000009.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawTextLayoutSetWidth)
ld: symbol(s) not found for architecture x86_64
EDIT:
When building ui with go build I get similar output as above btw, minus the warnings:
ui git:(master) ✗ sudo go build -a
# github.com/andlabs/ui
Undefined symbols for architecture x86_64:
"_uiDrawFontFamiliesFamily", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawFontFamiliesFamily in _x010.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawFontFamiliesFamily)
"_uiDrawFontFamiliesNumFamilies", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawFontFamiliesNumFamilies in _x010.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawFontFamiliesNumFamilies)
"_uiDrawFreeFontFamilies", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawFreeFontFamilies in _x010.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawFreeFontFamilies)
"_uiDrawFreeTextFont", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawFreeTextFont in _x010.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawFreeTextFont)
"_uiDrawListFontFamilies", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawListFontFamilies in _x010.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawListFontFamilies)
"_uiDrawLoadClosestFont", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_newFont in _x010.o
"_uiDrawTextFontGetMetrics", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawTextFontGetMetrics in _x010.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawTextFontGetMetrics)
"_uiDrawTextFontHandle", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawTextFontHandle in _x010.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawTextFontHandle)
"_uiDrawTextLayoutSetWidth", referenced from:
__cgo_4c8af1dc3c2c_Cfunc_uiDrawTextLayoutSetWidth in _x010.o
(maybe you meant: __cgo_4c8af1dc3c2c_Cfunc_uiDrawTextLayoutSetWidth)
ld: symbol(s) not found for architecture x86_64
clang-6.0: error: linker command failed with exit code 1 (use -v to see invocation)
My builds keep failing.
I first tried a go get and then built my project, but got some issues. So I build libui:
And then run go build in my project and got the following:
EDIT: When building ui with go build I get similar output as above btw, minus the warnings: