openwrt系统编译基础知识点

正在查看 2 条回复
  • 作者
    帖子
    • okass - WirelessLink社区okass
      参与者
      #1205
      Up
      0
      Down
      ::

      这里是openwrt 编译过程中的基础知识点

      访问ChatGPT的可用VPS机房IP推荐 Lisahost美国原生IP搬瓦工美西DMITTripodcloudFrantech
    • okass - WirelessLink社区okass
      参与者
      #1206
      Up
      0
      Down
      ::

      1. [question] make config,make menuconfig,make oldconfig,make xconfig,make defconfig,make gconfig?

      在进行内核配置,或者是对一些软件的配置和编译中,常常会遇到:

      make config

      make menuconfig

      make oldconfig

      make xconfig

      make defconfig

      make gconfig

      —————————————————————————————

      1、make config

      是文本式,对话式,基于命令行的一种配置。

      2、make menuconfig

      这是有菜单选项以及有辅助图形界面的配置,基于ncurses库。(常常使用)

      3、make oldconfig

      使用旧的(之前)的配置

      4、make xconfig

      真正意义上的用到了图形界面的配置,使用的是QT的库。由于会加载额外的库,并不是用得很多。

      5、make deconfig

      直接使用某个默认的配置,和配置内容相关,与使用何种配置方式无关。

      6、make gconfig

      也是使用的图形界面,用到的是GTK的库。

      访问ChatGPT的可用VPS机房IP推荐 Lisahost美国原生IP搬瓦工美西DMITTripodcloudFrantech
    • okass - WirelessLink社区okass
      参与者
      #1207
      Up
      0
      Down
      ::

      2. [question].  WebRTC编译系统之GYP,gn和ninja you哪些区别

       

      ninja 的官网在这里: https://ninja-build.org/
      要完整编译 WebRTC ,只要在 src 目录执行下列命令:
      -C 选项告诉 ninja ,进入 out/Release 目录来编译。所以,它等同于:
      要编译某个模块,可以在 ninja 命令后跟模块名字(build.ninja文件中定义的构建目标,就像 Makefile 中的构建目标一样)。比如:

      gn 和 gni 文件都在源码树中,比如 src 目录。当执行 gn gen 时,gn 工具根据 gn 和 gni 生成 ninja 文件并将这些 ninja 文件放到指定的构建目录中。
      .gn 文件中可以使用预定义的参数,比如 is_debug , target_os , rtc_use_h264 等。
      .gn 和 .gni 文件中用到各种指令,都在这里有说明: GN Reference。

      gn 文件中也可以通过 defines 来定义宏,通过 cflags 来指定传递给编译器的标记,通过 ldflags 指定传递给链接器的标记,还可以使用 sources 指定源文件。下面是 webrtc/BUILD.gn 文件的部分内容:
      gni 文件是 GN build 使用的头文件,它里面可以做各种事情,比如定义变量、宏、定义配置、定义模板等。

      你也可以直接使用 gn 内置的 shared_library 和 static_library 来声明目标,比如 third_party/ffmpeg/BUILD.gn 就使用 shared_library 来生成动态库。
      webrtc/examples/DEPS

      GYP是Generate Your Projects的缩写,GYP的目的是为了支持更大的项目编译在不同的平台,比如Mac,Windows,Linux,它可以生成Xcode工程,Visual Studio工程,Ninja编译文件和Mackefiles。

      访问ChatGPT的可用VPS机房IP推荐 Lisahost美国原生IP搬瓦工美西DMITTripodcloudFrantech
正在查看 2 条回复
  • 哎呀,回复话题必需登录。
WirelessLink社区
Logo