从Homebrew Formula创建符号链接到/ usr / local / lib / cmake

时间:2018-04-18 19:03:35

标签: ruby macos homebrew symlink

我写了一个自定义的Homebrew Formula来分发一些库。我对结果感到满意,但这是一个突出的问题。我想在YORPLibConfig.cmake中安装cmake配置文件(/use/local/lib/cmake)。

不幸的是,这个位置在公式中似乎遥不可及。由于漂亮的lib.installinclude.install函数,我没有任何问题来安装库及其标题,但我没有运气,因为没有lib/cmake.install等价物

我还尝试通过

手动创建符号链接
ln_sf "YORPLibConfig.cmake", "/usr/local/lib/cmake/"

但是抛出后安装失败

Error: Operation not permitted @ rb_file_s_symlink - (YORPLibConfig.cmake, /usr/local/lib/cmake/YORPLibConfig.cmake)

如何在公式中的/usr/local/lib/cmake中安装此cmake文件?

公式本身:

class Yorplib < Formula
  desc "A library for the computation of the Fourier decomposition of YORP forces and moments"
  homepage "https://github.com/bbercovici/YORPLib"
  url "https://github.com/bbercovici/YORPLib/archive/1.0.0.tar.gz"
  sha256 "45fb9a2969368e76e472a39afa8feb32c27cbe17032371e06fd283f3d70bb7c7"

  depends_on "cmake" => :build

  def install

    # Compile
    system "cmake . -DBREW:BOOL=TRUE && make"

    prefix.install "YORPLibConfig.cmake"

    # Create symlink to library
    ln_sf "YORPLibConfig.cmake", "/usr/local/lib/cmake/"

    lib.install "libYORPLib.dylib"
    include.install "include/"


  end

end

1 个答案:

答案 0 :(得分:0)

我最后修改了公式和CMakeLists.txt文件,以便在/ usr / local / share中的配置文件中安装符号链接。符号链接指向的配置文件位于Cellar。