在不动态链接到特定文件位置的情况下构建命令行工具 (macOS)
Build a command line tool without dynamically linking to specific file location (macOS)
我正在开发一个使用 libtiff 工具 tiff2pdf
和 tiffcp
的小型实用程序。我希望能够将它与这两个工具的二进制文件一起分发,以便它可以从任何下载到的地方 运行。
我已经按照 here 的说明构建了 libtiff,但是在构建之后,这些工具依赖于 libtiff.5.dylib
,它位于基于步骤 ./configure --prefix=/path_here.../
的特定于我的机器的位置。我也试过 ./configure --enable-static --prefix=/path_here.../
但根据 otool -l tiff2pdf
它仍然是动态链接的。
是否有生成未链接到系统硬编码位置的二进制文件的通用方法?如果可能的话,链接到相对路径会很好。
答案在 ./configure --help
中。使用 --enable-static
不会强制静态链接可执行文件,因为仍然使用 --enable-shared
。 --disable-shared
成功了。
我正在开发一个使用 libtiff 工具 tiff2pdf
和 tiffcp
的小型实用程序。我希望能够将它与这两个工具的二进制文件一起分发,以便它可以从任何下载到的地方 运行。
我已经按照 here 的说明构建了 libtiff,但是在构建之后,这些工具依赖于 libtiff.5.dylib
,它位于基于步骤 ./configure --prefix=/path_here.../
的特定于我的机器的位置。我也试过 ./configure --enable-static --prefix=/path_here.../
但根据 otool -l tiff2pdf
它仍然是动态链接的。
是否有生成未链接到系统硬编码位置的二进制文件的通用方法?如果可能的话,链接到相对路径会很好。
答案在 ./configure --help
中。使用 --enable-static
不会强制静态链接可执行文件,因为仍然使用 --enable-shared
。 --disable-shared
成功了。