LoopPerfect / buckaroo-wishlist

Meta repo for Buckaroo package requests ✨
https://buckaroo.pm
MIT License
9 stars 0 forks source link

davisking/dlib #65

Closed voldyman closed 7 years ago

voldyman commented 7 years ago

dlib :)

njlr commented 7 years ago

Hi @voldyman!

Looks like an easy enough port; I'll take a look!

njlr commented 7 years ago

I have completed a basic port of dlib (PR).

dlib has two compilation modes, switched using -DDLIB_ISO_CPP_ONLY. The current package has this enabled, so only the core functionality of dlib is provided. If you need more functionality, let me know and I can take another look.

Anyway, to install dlib:

buckaroo upgrade
buckaroo install davisking/dlib 
voldyman commented 7 years ago

thanks for the quick turnaround time, i am trying to build the http example and am getting the following error. https://gist.github.com/voldyman/8f7eda99b624e44744159c74f79aeb04

njlr commented 7 years ago

The server components sit outside of the DLIB_ISO_CPP_ONLY components. See here.

Do you know which parts you require?

voldyman commented 7 years ago

Yup, i use server_http, image_processing & gui_widgets

njlr commented 7 years ago

OK, should be viable. Are you on Linux? These components will be platform-specific so I will port your platform first.

voldyman commented 7 years ago

I am on mac OS

njlr commented 7 years ago

Great, me too.

I managed to get the full build of dlib working on macOS. Here is the BUCK file.

You can update your cookbook using:

buckaroo upgrade

Since the full dlib uses X11, you will need to link some dynamic libraries into your project. They are not linked into the Buckaroo dlib package because that might break reproducibility.

This is how you can do this in your project's BUCK file:

macos_linker_flags = [
  '-L/usr/X11/lib',
  '-lX11',
]

cxx_binary(
  name = 'app',
  srcs = [
    'main.cpp',
  ],
  compiler_flags = [
    '-std=c++11',
  ],
  platform_linker_flags = [
    ('default', macos_linker_flags),
    ('^macos.*', macos_linker_flags),
  ],
  deps = BUCKAROO_DEPS,
)

You can see this in action in the examples that I ported to Buck.