Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 Apr 2020 16:30:56 +0000
From:      Michael Pumford <michaelp@bsquare.com>
To:        "freebsd-stable@freebsd.org" <freebsd-stable@freebsd.org>
Subject:   Re: CMake build
Message-ID:  <90c8a7f5-076f-97ab-7178-885867ce5dee@bsquare.com>
In-Reply-To: <CAD1wxR%2BaF=2ea4_Gq0LArq-pPC3kCzBe40ZbLsGiF3awBb_6Gw@mail.gmail.com>

index | next in thread | previous in thread | raw e-mail

On 27/04/2020 17:07, Pietro Paolini wrote:
> Hi all,
> 
> I am new to FreeBSD even though I have been working in Unix
> environments for a long while (mainly Linux). I am struggling to build
> a library locally, using cmake - the library builds fine on a Linux
> machine as long as dependencies are satisfied. However in my case
> CMake gets all the dependencies correctly - namely it finds all
> libraries it needs - but it fails lo link them:

> Not a single one is found - I must be doing a silly mistake somewhere
> - I am wondering, is there any need from my side to tell CMake I am
> about to use not GNU Make ?
> 
Have you told CMake you depend on those libraries? They aren't installed 
by default on FreeBSD. If you have declared them as dependencies then 
CMake should automatically add the correct include and library paths to 
the compiler commands lines for you. My guess is that the cmake file is 
just assuming they are all in /usr/lib and the includes are in 
/usr/include which would be true on Linux.

For external dependencies in cmake you should have:
find_package(packagename REQUIRED)
for each library (or library package) in the library CMakeLists.txt. If 
they are not there then you need to fix the cmakelists.txt until all the 
libraries you depend on have a find_package line (unless multiple 
libraries are part of the bundle). At this point cmake will sort out the 
compiler command lines for you. And will still work on linux.





> Thanks,
> Pietro
> _______________________________________________
> freebsd-stable@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org"
> 


help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?90c8a7f5-076f-97ab-7178-885867ce5dee>