如何在OSX上将libjpeg 8安装到/ opt / local?我问的原因是我想用MNE-C libraries创建小型大脑活动电影。
我执行了' mne_make_movie'这会导致以下错误:
选择了电影作品(来自数据)...正在扫描 /Users/user/mne/MNE-2.7.4-3420-MacOSX-x86_64/lib for plugins Found lqt_mjpeg.so ...从模块获取编解码器信息尝试加载 /Users/user/mne/MNE-2.7.4-3420-MacOSX-x86_64/lib/lqt_mjpeg.so ... dlopen失败了 /Users/user/mne/MNE-2.7.4-3420-MacOSX-x86_64/lib/lqt_mjpeg.so: dlopen的(/Users/user/mne/MNE-2.7.4-3420-MacOSX-x86_64/lib/lqt_mjpeg.so, 2):未加载库:/opt/local/lib/libjpeg.8.dylib引用 来自:/Users/user/mne/MNE-2.7.4-3420-MacOSX-x86_64/lib/lqt_mjpeg.so
原因:找不到图像错误:lqt_find_video_codec找不到 编解码器!
由于所有内容都已编译,我不认为我可以更改“mne_make_movie”的位置。正在寻找libjpeg。所以我尝试使用Mac Ports安装libjpeg,它只有libjpeg-turbo可用。但是,我又得到了另一个错误:
选择了电影作品(来自数据)...正在扫描 /Users/user/mne/MNE-2.7.4-3420-MacOSX-x86_64/lib for plugins Found lqt_mjpeg.so ...从模块获取编解码器信息尝试加载 /Users/user/mne/MNE-2.7.4-3420-MacOSX-x86_64/lib/lqt_mjpeg.so ... dlopen失败了 /Users/user/mne/MNE-2.7.4-3420-MacOSX-x86_64/lib/lqt_mjpeg.so: dlopen的(/Users/user/mne/MNE-2.7.4-3420-MacOSX-x86_64/lib/lqt_mjpeg.so, 2):未加载库:/opt/local/lib/libjpeg.8.dylib引用 来自:/Users/user/mne/MNE-2.7.4-3420-MacOSX-x86_64/lib/lqt_mjpeg.so
原因:库版本不兼容:lqt_mjpeg.so需要版本 13.0.0或更高版本,但libjpeg.8.dylib提供版本10.0.0错误:lqt_find_video_codec无法找到编解码器!
Mac Ports似乎没有更新的版本。
在libjpeg的官方website上,我下载了版本8d的源代码,并按照安装说明进行操作。这会将所有内容安装到/ usr / local。我不熟悉makefile,也不知道我必须改变什么才能正确安装到/ opt / local。
那么如何将libjpeg 8版本13.0.0或更高版本安装到/ opt / local?
P.S。:Homebrew似乎不适用,因为它没有安装到/ opt / local(并且不建议将其更改为/ opt / local),libjpeg 9似乎是唯一可用的版本。
答案 0 :(得分:1)
如果您不使用命令行构建工具,或者您最近升级了macOS,则可能需要在开始之前下载Xcode命令行工具。如果你已经拥有它们,它不会造成任何伤害。命令是:
xcode-select --install
然后以下内容应该可行,但我还没有测试过,所以您可能希望一次将一行复制并粘贴到终端中:
curl -O -J -L http://www.ijg.org/files/jpegsrc.v8.tar.gz
tar xvfz jpeg*tar.gz # Unzip and untar what you downloaded
cd jpeg-8 # Change directory to wherever it unpacked to
./configure --prefix="/opt/local" # Configure with the necessary prefix
make
make install
您可能需要在最后一行前加sudo
。