【LibRaw】原始图像解码库介绍(二)——编译和安装

编译和安装

LibRaw以源代码的形式分发。为了进一步使用,应编译它们(如果需要,还可以将它们放入带有库和包含文件的系统文件夹中)。

Unix系统(FreeBSD,Linux,Mac OS X)

要构建库,您需要一个可用的C ++编译器(gcc版本3.x或4.x可以;其他编译器尚未经过测试)和make实用程序。不需要其他库或实用程序。

LibRaw已经在32位和64位Unix系统上进行了测试,这些系统在x86(和AMD64-)兼容处理器上运行。其他架构的构建和工作尚未经过测试。

图书馆和实例的汇编

解压缩下载的分发包。如果您想使用LibRaw-demosaic-pack(s),请解压缩这些档案:

        tar xzvf LibRaw-X.YY.tar.gz
        tar xzvf LibRaw-demosaic-pack-GPL2-X.YY.tar.gz
        tar xzvf LibRaw-demosaic-pack-GPL3-X.YY.tar.gz
        tar xzvf LibRaw-X.YY.tar.gz
    

转到LibRaw目录并运行./configuremake

cd LibRaw-X.YY
./configure#with optional args
使
    

结果,你将编译

  • lib /文件夹中的库libraw.a
  • 实施例在bin /文件夹(实施例的源代码是在所述样品/文件夹)。

在当前版本中,仅构建静态库:

  • libraw.a:非线程安全版本
  • libraw_r.a:线程安全

构建参数

./configure脚本有一些非标准参数:

--enable-openmp 
--disable-openmp
如果编译器支持,则启用/禁用OpenMP支持。默认情况下启用OpenMP。
--enable-lcms 
--disable-lcms
启用/禁用LCMS颜色引擎支持。如果启用,。/ configure将尝试查找lcms库。LCMS-1.x和LCMS-2.x均受支持默认情况下启用LCMS支持
--enable-examples 
--disable-examples
启用/禁用示例编译和安装。默认启用
--enable-demosaic-pack-gpl2 
--enable-demosaic-pack-gpl2 = FOLDERNAME 
--enable-demosaic-pack-gpl2 = no 
--disable-demosaic-pack-gpl2
启用/禁用对GPL2下许可的其他demosaic方法的支持您需要下载并解压缩LibRaw-demosaic-pack-GPL2存档才能使用此功能。
./configure将尝试在以下位置找到demosaic pack:
  • 如果通过--enable-demosaic-pack-gpl2 = FOLDERNAME命令行选项指定了文件夹,则仅检查此文件夹。
  • 如果--enable-demosaic-pack-gpl2开关中没有指定文件夹:
    • ./LibRaw-demosaic-pack-GPL2(在LibRaw文件夹中)
    • ../LibRaw-demosaic-pack*GPL2* - 上级文件夹
    如果上层目录中存在多个../LibRaw-demosaic-pack*GPL2*文件夹,那么./configure将不会因为歧义而使用任何文件夹。在这种情况下使用--enable-demosaic-pack-gpl2 = FOLDERNAME指定确切的文件夹名称
--enable-demosaic-pack-gpl3 
--enable -demosaic -pack-gpl3 = FOLDERNAME 
--enable-demosaic-pack-gpl3 = no 
--disable-demosaic-pack-gpl3
与上述相同,但适用于GPL3许可的demosaic pack。

安装和使用

要安装库,请运行

    sudo make install
    

它将库放在/ usr / local / lib中,将/ usr / local / include(libraw的子文件夹)中的include文件和LibRaw示例放到/ usr / local / bin中您可以使用./configure脚本覆盖安装路径。 
要使用LibRaw,请将以下参数添加到编译器调用中(构建自己的项目时):

  • 包含文件的路径:-I / usr / local / include
  • 库的路径:-L / usr / local / lib
  • 库:-lraw(普通版)或-lraw_r(线程安全版)。

Windows:在Cygwin下构建

构建和安装与Unix系统下的构建和安装完全相似

Windows:原生建筑

在Windows下构建有三个步骤:

  • 解压缩分发包(如果你没有tar + gzip,请以.ZIP格式获取LibRaw分发包)并转到文件夹LibRaw-X.YYY。
  • 设置环境参数,以便编译器/链接器可以找到库和包含文件。对于Visual C ++,这是通过运行vcvars32.bat来完成的
  • 运行
    nmake -f Makefile.msvc

如果所有路径都已正确设置并且找到了include-files / libraries,那么将编译以下内容:

  • 文件夹lib中的库libraw_static.lib
  • 动态库bin / libraw.dll和lib / libraw.lib的链接库
  • 文件夹bin /中的示例。

只有线程安全库是在Win32下构建的,但它也可以与非线程应用程序一起使用。所有示例都与动态库(DLL)链接; 如果需要静态链接,则应将应用程序与库libraw_static.lib链接,并在编译期间设置预处理器选项/ DLIBRAW_NODLL。

Windows版本现在编译时没有LCMS支持。

在构建DLL期间,导出所有公共函数; 此外,可以减少导出的子集。

不幸的是,include / libraries的路径取决于Visual C(或其他编译器)的安装方式; 因此,不可能在Makefile.msvc中指定一些标准路径。

Windows安装

不支持Windows下的安装。假设所有DLL将与使用它们的软件一起提供(并且该软件将执行安装)。因此,在使用LibRaw构建程序时,应手动指定库,DLL和包含文件的路径。

<think>好的,我现在需要帮助用户解决关于玩客云设备刷入Armbian系统后更换软件源的问题。首先,我需要确认用户的需求。用户已经成功刷入Armbian,现在想更换软件源,可能因为默认源速度慢或不可用,想换成国内镜像源,比如清华源、阿里云等。 接下来,我应该回想更换软件源的一般步骤。对于基于Debian的系统,通常是修改`/etc/apt/sources.list`文件,替换里面的仓库地址。Armbian作为Debian的衍生版,应该也是类似的方法。但可能需要确认具体的版本代号,比如buster、bullseye等,因为不同版本对应的源不同。 然后,用户可能需要具体的操作步骤。首先备份原文件,防止出错。然后使用sed命令或者nano编辑器替换源。同时,还要考虑是否需要更新软件列表,执行`apt update`。可能还需要更换其他源,比如Docker源或Python源,但用户的问题主要集中在软件源,也就是APT源。 另外,用户可能遇到的问题包括:权限不足,需要使用sudo;编辑器不熟悉,推荐使用nano;替换源后出现错误,如何排查;或者版本不匹配导致的问题。这些可能需要给出相应的解决建议。 需要确保提供的命令准确无误,比如正确的sed替换命令,正确的镜像源URL。例如,清华源的地址是否正确,是否支持Armbian的架构(armhf或arm64)。可能需要检查清华源或其他镜像源的官方文档,确认支持情况。 此外,用户可能需要验证是否更换成功,比如执行更新后没有错误,或者速度有明显提升。还可以建议用户测试安装软件包是否正常。 最后,生成相关问题,可能涉及如何安装特定软件、优化系统性能、配置中文环境等,这些是用户可能接下来会问的问题。 总结步骤: 1. 备份原sources.list 2. 替换为国内镜像源 3. 更新软件列表 4. 处理可能的问题,如版本代号错误、网络问题等 需要注意使用中文回答,行内公式用$...$,独立公式用$$...$$,但这个问题可能不太涉及数学公式,更多是命令行操作。但要确保LaTeX语法正确,如果有代码块的话用反引号包裹。 现在组织回答,确保结构清晰,分步骤说明,并提供验证方法和常见问题解决。同时,添加相关问题,帮助用户进一步了解。</think>### 玩客云Armbian更换软件源教程 #### 步骤说明 1. **连接设备** 通过SSH登录玩客云Armbian系统,例如: ```bash ssh root@设备IP地址 ``` 2. **备份原软件源** ```bash sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak ``` 3. **替换为国内镜像源** 使用以下命令替换默认源(以清华源为例,适用于Debian 11 "bullseye"版本): ```bash sudo sed -i 's@http://deb.debian.org@https://mirrors.tuna.tsinghua.edu.cn@g' /etc/apt/sources.list ``` 4. **更新软件列表** ```bash sudo apt update ``` 5. **验证更新** 若输出显示从清华源拉取数据且无报错,则更换成功。 #### 常见问题解决 - **版本不匹配** 使用`lsb_release -a`查看系统版本,替换命令中的`bullseye`为实际版本代号[^1]。 - **网络连接失败** 检查`ping mirrors.tuna.tsinghua.edu.cn`是否通顺,或尝试其他镜像源(如阿里云、中科大)。 #### 其他镜像源配置 - **阿里云源** ```bash sudo sed -i 's@http://deb.debian.org@https://mirrors.aliyun.com@g' /etc/apt/sources.list ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值