忍者ブログ
日々の研究生活のメモ書きなど
portでいろんな解析環境を整えると、そちらでもfftw3やGSLをインストールしてしまう
しかし、マシンの中に別のversionのライブラリが入っていると
どちらを呼び出しているのかをきちんと把握する必要がありめんどくさい

そこで、portで何かパッケージをインストールするときに、
自前で/usr/local以下にインストールしたfftw3やGSLを使ってインストールしてもらいたいんです

結論から言うと、たぶん、無理。

詳しくは公式ページ参照、
FAQ

よくわからんけど、
appleとかが用意したライブラリだと依存関係が崩れるとかそういう理由だと思われ
特にpython、過去に何度か泣かされました・・・
Will MacPorts link to system libraries rather than its own?

No, MacPorts maintains its own versions of libraries. See the next question for the reason why.

You may find some ports that link with some system libraries. Some of these are intentional, such as in cases where the MacPorts version is missing some crucial functionality (e.g. ports that need Kerberos support use the Mac OS X-supplied library, not the MacPorts one). In other cases these are bugs in the relevant ports, and tickets should be filed so it can be corrected.

Why is MacPorts using its own libraries?

There are several reasons why MacPorts uses its own libraries. It makes ports more consistent across different versions of Mac OS X. For example, if we can rely on openssl 1.0.0 from MacPorts, we don't have to test every port that needs ssl for every available openssl installation. Apple's software tends to break from time to time (e.g. openssl refuses to build with an old zlib, but for awhile Apple shipped the old headers of the vulnerable zlib version). Even if Apple's versions aren't broken, they're rarely up-to-date. Apple has a habit of not updating the libraries in Mac OS X until absolutely necessitated by a security vulnerability.

The drawbacks of this policy are minimal: Wasting a few megabytes for e.g. a Python installation is next to nothing if you have a multi-gigabyte hard disk, and the time required to build the additional ports decreases as computers get faster.



さらにもしこういうことができたとしても、
portsでインストールしたパッケージが自前でビルドしたfftw3、GSLのversionでそのまま依存関係をクリアできるかどうかとかわからないし、
結局こういうことはやらない方がいいという結論に達しました・・・・

portsのパッケージとそれに関する自前ビルドの共存は何かとめんどくさそう・・・










PR
プロフィール
HN:coffee
職業:物理屋(自称)
趣味:映画鑑賞
自己紹介:
#include <stdio.h>
#include "MyProfile.h"

#define TWITTER coffee_pote

#define WISH_LIST
amazonのほしい物リスト
#ifdef RICH_FLAG
// ↑いつも支援いただきありがとうございます m(_ _)m
#endif


int main(void){

printf("\n");
printf("D論・・・? あぁそんな子もいましたね(執筆中)\n");
printf("\n");
printf("猿でもわかるgnuplot を執筆中(こっちの執筆は半年以上何も進んでいない・・・・)\n");
/* 最終更新 2017/07/19 */
return 0;

}
カウンター
ブログ内検索
ツイートするボタン
Flickr

Template "simple02" by Emile*Emilie
忍者ブログ [PR]