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

孝感做网站的公司理发培训专业学校

孝感做网站的公司,理发培训专业学校,网站资源建设的步骤,阿里云服务器搭建多个网站1.ffmpeg默认使用gcc编译,在android上无法使用,否则各种报错,所以要用ndk的clang编译 2.下载ffmpeg源码 修改configure文件,增加命令 cross_prefix_clang 修改以下命令 cc_default"${cross_prefix}${cc_default}" cxx…

1.ffmpeg默认使用gcc编译,在android上无法使用,否则各种报错,所以要用ndk的clang编译

2.下载ffmpeg源码
修改configure文件,增加命令 cross_prefix_clang
修改以下命令

cc_default="${cross_prefix}${cc_default}"
cxx_default="${cross_prefix}${cxx_default}"

修改后

cc_default="${cross_prefix_clang}${cc_default}"
cxx_default="${cross_prefix_clang}${cxx_default}"

3.新建脚本文件,ffmpeg目录下执行脚本文件即可。
编译32位,则ARCH改为arm,CPU改为armv7-a,TARGET改为armv7a-linux-androideabi
注意,r25版本的ndk移除了交叉编译工具,改成了llvm,所以要把交叉编译工具路径指向llvm的路径
在这里插入图片描述

#!/bin/bash
set -x
# 目标Android版本
API=21
ARCH=arm64
CPU=armv8-a
TARGET=aarch64-linux-android
#so库输出目录
OUTPUT=/root/Desktop/compile/ffmpeg/build_$CPU
#NDK路径
NDK=/root/Desktop/compile/ndk/android-ndk-r25c
#NDK=/root/Desktop/compile/ndk/android-ndk-r20b
# 编译工具链路径
TOOLCHAIN=$NDK/toolchains/llvm/prebuilt/linux-x86_64
# 编译环境
SYSROOT=$TOOLCHAIN/sysroot#OPTIMIZE_CFLAGS="-mfloat-abi=softfp -mfpu=vfp -marm -march=$CPU -DBIONIC_IOCTL_NO_SIGNEDNESS_OVERLOAD"#point build to llvm 
ln -s $TOOLCHAIN/bin/llvm-ar $TOOLCHAIN/bin/$TARGET-ar
ln -s $TOOLCHAIN/bin/llvm-nm $TOOLCHAIN/bin/$TARGET-nm
ln -s $TOOLCHAIN/bin/llvm-ranlib $TOOLCHAIN/bin/$TARGET-ranlib
ln -s $TOOLCHAIN/bin/llvm-strip $TOOLCHAIN/bin/$TARGET-stripfunction build
{./configure \--prefix=$OUTPUT \--target-os=android \--arch=$ARCH \--cpu=$CPU \--enable-cross-compile \--enable-shared \--disable-static \--disable-vulkan \--sysroot=$SYSROOT \--cross-prefix=$TOOLCHAIN/bin/$TARGET- \--cross-prefix-clang=$TOOLCHAIN/bin/$TARGET$API- \make clean allmake install
}build

4.android studio 导入在这里插入图片描述
5.cmake配置

cmake_minimum_required(VERSION 3.22.1)# Declares and names the project.project("teskndk")# Creates and names a library, sets it as either STATIC
# or SHARED, and provides the relative paths to its source code.
# You can define multiple libraries, and CMake builds them for you.
# Gradle automatically packages shared libraries with your APK.#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11")
#include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include)
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -L${CMAKE_CURRENT_SOURCE_DIR}/../../../libs/")add_library( # Sets the name of the library.teskndk# Sets the library as a shared library.SHARED# Provides a relative path to your source file(s).native-lib.cpp)add_library(avcodec SHARED IMPORTED)
set_target_properties(avcodec PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/../../../libs/${ANDROID_ABI}/libavcodec.so)add_library(avdevice SHARED IMPORTED)
set_target_properties(avdevice PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/../../../libs/${ANDROID_ABI}/libavdevice.so)add_library(avfilter SHARED IMPORTED)
set_target_properties(avfilter PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/../../../libs/${ANDROID_ABI}/libavfilter.so)add_library(avformat SHARED IMPORTED)
set_target_properties(avformat PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/../../../libs/${ANDROID_ABI}/libavformat.so)add_library(avutil SHARED IMPORTED)
set_target_properties(avutil PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/../../../libs/${ANDROID_ABI}/libavutil.so)add_library(swresample SHARED IMPORTED)
set_target_properties(swresample PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/../../../libs/${ANDROID_ABI}/libswresample.so)add_library(swscale SHARED IMPORTED)
set_target_properties(swscale PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/../../../libs/${ANDROID_ABI}/libswscale.so)# Searches for a specified prebuilt library and stores the path as a
# variable. Because CMake includes system libraries in the search path by
# default, you only need to specify the name of the public NDK library
# you want to add. CMake verifies that the library exists before
# completing its build.find_library( # Sets the name of the path variable.log-lib# Specifies the name of the NDK library that# you want CMake to locate.log)# Specifies libraries CMake should link to your target library. You
# can link multiple libraries, such as libraries you define in this
# build script, prebuilt third-party libraries, or system libraries.target_link_libraries( # Specifies the target library.teskndkavcodecavdeviceavfilteravformatavutilswresampleswscale# Links the target library to the log library# included in the NDK.${log-lib})

成功运行

http://www.ds6.com.cn/news/59818.html

相关文章:

  • 文昌网站建设推广平台 赚佣金
  • 怎么做网站设计方案关键词挖掘站长
  • 第一个做电子商务的网站大数据网站
  • 微信上浏览自己做的网站吗合肥seo优化排名公司
  • 微信公众号小程序开发seo网站推广方案策划书
  • 广州定制网站开发网址查询工具
  • 米拓做的网站如何改代码网络营销课程速成班
  • saas建站和开源建站的区别有域名有服务器怎么做网站
  • 天猫建设网站的理由seo图片优化的方法
  • 网站建设 回本娃哈哈软文推广
  • 西安那里做网站关键词规划师工具
  • 网站建设常州推广链接点击器app
  • 网站推广是怎么做的如何制作网站赚钱
  • 广西南宁最新消息新闻全国最好网络优化公司
  • 做卡盟网站教程seo优化网站优化排名
  • 品牌营销策略论文电商seo优化
  • 东莞短视频seo优化seo的收费标准
  • 海南什么公司的网站个人网页免费域名注册入口
  • 哈尔滨网站建设服务sem竞价是什么
  • 镇海企业建站如何推广一款app
  • 怎么优化推广自己的网站长沙百度关键词排名
  • 政府网站集约化建设建议网销怎么做才能做好
  • 让别人做网站的话术seo怎么优化软件
  • 大沥网站设计windows优化大师可以卸载吗
  • 网站建设卖东西电商培训班一般多少钱
  • 吉林大学学院网站建设群网上推广平台有哪些
  • 装饰公司响应式网站建设案例免费的大数据分析平台
  • 免费视频素材下载的网站站长之家点击进入
  • 信息分类网站好建吗长沙弧度seo
  • 查看一个网站的源代码做评价seo 什么意思