当前位置: 首页 > news >正文

linux 下第三方库编译及交叉编译——MDBTOOLS--arm-64

 1 相关依赖

gettext

2 下载、解压

wget https://github.com/mdbtools/mdbtools/archive/refs/tags/v1.0.0.tar.gz
tar -xvf v1.0.0.tar.gz

2.2 生成Makefile

2.2.1 解决问题

# 设置交叉编译链路径(替换为你的实际路径)
export CROSS_COMPILE_PATH="/home/nanqiu/Desktop/work/huawei_edge_app/buildTouchain/gcc-arm-8.2-2019.01-x86_64-aarch64-linux-gnu/bin"# 将交叉编译链添加到系统 PATH(确保能找到编译器)
export PATH="$CROSS_COMPILE_PATH:$PATH"# 指定默认编译器为交叉编译链的 gcc(ARM 架构)
export CC="$CROSS_COMPILE_PATH/aarch64-linux-gnu-gcc"# 指定默认链接器(可选,部分项目需要)
export LD="$CROSS_COMPILE_PATH/aarch64-linux-gnu-ld"
# 重建 m4 目录
mkdir -p m4# 复制 gettext 中的所有宏文件到项目 m4 目录(确保宏文件完整)
cp /home/nanqiu/Desktop/lib/gettext/gettext-0.20.1/my_build_x86/share/aclocal/*.m4 ./m4/
nano m4/ac_lib.m4
写入
AC_DEFUN([AC_LIB_PREPARE_PREFIX],
[AC_ARG_WITH([libdir],AS_HELP_STRING([--with-libdir=DIR], [install library files in DIR [[PREFIX/lib]]]),[libdir=$withval], [libdir='${exec_prefix}/lib'])AC_SUBST(libdir)
])AC_DEFUN([AC_LIB_RPATH],
[AC_ARG_ENABLE([rpath],AS_HELP_STRING([--disable-rpath], [do not hardcode runtime library paths]),[enable_rpath=$enableval], [enable_rpath=yes])if test "x$enable_rpath" = "xyes"; thenRPATH_FLAGS="-Wl,-rpath,$libdir"elseRPATH_FLAGS=""fiAC_SUBST(RPATH_FLAGS)
])AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
[AC_REQUIRE([AC_LIB_PREPARE_PREFIX])LDFLAGS="$LDFLAGS -L$libdir $RPATH_FLAGS"
])AC_DEFUN([AC_LIB_APPENDTOVAR],
[eval "$1=\"\$$1 $2\""
])
# 确保 build-aux 目录存在
mkdir -p build-aux# 从你的 gettext 编译目录复制 config.rpath 文件
cp /home/nanqiu/Desktop/lib/gettext/gettext-0.20.1/my_build_x86/share/gettext/config.rpath ./build-aux/

2.2.2

sudo apt update && sudo apt install autoconf-archive
# 清理缓存并重新生成
rm -rf autom4te.cache/
autoreconf -i -f -v -I ./m4

2.2.3

./configure \--disable-glib \--with-unixodbc=/home/nanqiu/Desktop/lib/obdc/unixODBC-2.3.7/arm64 \--prefix=$(pwd)/mybuild \--host=aarch64-linux-gnu \--build=x86_64-pc-linux-gnu \LDFLAGS="-L/home/nanqiu/Desktop/lib/obdc/unixODBC-2.3.7/arm64/lib" \CPPFLAGS="-I/home/nanqiu/Desktop/lib/obdc/unixODBC-2.3.7/arm64/include"

2.3 编译

make LDFLAGS="-L/home/nanqiu/Desktop/lib/obdc/unixODBC-2.3.7/arm64/lib -Wl,-rpath-link=/home/nanqiu/Desktop/lib/obdc/unixODBC-2.3.7/arm64/lib"

2.4 安装

结果在

http://www.dtcms.com/a/331877.html

相关文章:

  • 使用Docker安装Gitea自托管的Git服务
  • 零基础从头教学Linux(Day 12)
  • python+vue扫盲
  • 智能制造综合实训平台数据采集物联网解决方案
  • 备忘录模式及优化
  • 多窗口多烧蚀(Multi-window, Multi-Burn-Rate, MWMBR)
  • 苹果AI战略布局:重新定义智能家居与AI助手的未来
  • TDengine IDMP 基本功能(7. 智能问数)
  • 乘积小于K的子数组
  • flstudio.exe安装教程|FL Studio怎么下载安装?超简单中文指南
  • 状态管理、网络句柄、功能组和功能组状态的逻辑关系
  • 微服务架构概述
  • 《算法导论》第 24 章 - 单源最短路径
  • stm32项目(28)——基于stm32的环境监测并上传至onenet云平台
  • 手机实时提取SIM卡打电话的信令声音-整体解决方案规划
  • Linux新手上路 | 在Ubuntu上Pluma文本编辑器的安装与基本使用
  • 大模型部署基础设施搭建 - Open WebUI
  • 小知识:for of,for in与forEach
  • Stable Diffusion Models are Secretly Good at Visual In-Context Learning
  • localhost:5501与本机ip:5501不同源
  • 服务器的安全检测和防御技术
  • Video-R1论文解读
  • 【深度学习新浪潮】VGGT论文分析
  • docker 如何下载安装配置使用
  • 数据结构:树(Tree)
  • c++中的Lambda表达式详解
  • Linux 对 YUM 包的管理
  • 20250814荣品RD-RK3588开发板在Rockchip原厂的buildroot【linux-5.10】下让eth0网卡跑iperf2测试网速
  • 机器学习初学
  • Linux 编译过程中遇到 TMPDIR 空间不足的问题