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

迅速建设企业网站适合网站开发工程师的公司

迅速建设企业网站,适合网站开发工程师的公司,培训机构网站如何建设,工商做年报网站编译OpenWrt的应用程序可以参考OpenWrt内部其他应用程序的例程,来编写成自己的应用程序 一、OpenWrt源代码获取与编译 1.1、搭建环境 下载OpenWrt的官方源码: git clone https://github.com/openwrt/openwrt.git1.2、安装编译依赖项 sudo apt update…

  编译OpenWrt的应用程序可以参考OpenWrt内部其他应用程序的例程,来编写成自己的应用程序

一、OpenWrt源代码获取与编译

1.1、搭建环境

  下载OpenWrt的官方源码:

git clone https://github.com/openwrt/openwrt.git

1.2、安装编译依赖项

sudo apt update -y
sudo apt full-upgrade -y
sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \
bzip2 ccache cmake cpio curl device-tree-compiler fastjar flex gawk gettext gcc-multilib g++-multilib \
git gperf haveged help2man intltool libc6-dev-i386 libelf-dev libglib2.0-dev libgmp3-dev libltdl-dev \
libmpc-dev libmpfr-dev libncurses5-dev libncursesw5-dev libreadline-dev libssl-dev libtool lrzsz \
mkisofs msmtp nano ninja-build p7zip p7zip-full patch pkgconf python2.7 python3 python3-pyelftools \
libpython3-dev qemu-utils rsync scons squashfs-tools subversion swig texinfo uglifyjs upx-ucl unzip \
vim wget xmlto xxd zlib1g-dev python3-setuptools

1.3、更新 feeds

  进入openwrt目录后执行以下指令


./scripts/feeds update -a
./scripts/feeds install -a

1.4、配置编译选项

  根据自己的平台来选择编译选项

make menuconfig

1.5、下载 dl 库

  进入openwrt目录后执行以下指令

make download -j8

1.6、编译

make V=s -j1

二、OpenWrt应用源代码分析

  OpenWrt应用源代码存放目录为package/utils
在这里插入图片描述
  以fbtest应用程序为例进行分析。在fbtest文件夹下面有一个Makefile文件和src文件夹,而src文件夹下有模块源码fbtest.c和源码编译Makefile
在这里插入图片描述

2.1、顶层makefile分析

  顶层makefile内容如下

#
# Copyright (C) 2012 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#include $(TOPDIR)/rules.mkPKG_NAME:=fbtest
PKG_RELEASE:=1PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)include $(INCLUDE_DIR)/package.mkdefine Package/fbtestSECTION:=utilsCATEGORY:=UtilitiesTITLE:=Frame buffer device testing toolDEPENDS:=@DISPLAY_SUPPORT
endefdefine Build/Configure
endefdefine Build/Compile$(MAKE) -C $(PKG_BUILD_DIR) \CC="$(TARGET_CC)" \CFLAGS="$(TARGET_CFLAGS) -Wall" \LDFLAGS="$(TARGET_LDFLAGS)"
endefdefine Package/fbtest/install$(INSTALL_DIR) $(1)/usr/sbin$(INSTALL_BIN) $(PKG_BUILD_DIR)/fbtest $(1)/usr/sbin/
endef$(eval $(call BuildPackage,fbtest))

2.2、源码makefile

CC = gcc
CFLAGS = -Wall
OBJS = fbtest.oall: fbtest%.o: %.c$(CC) $(CFLAGS) -c -o $@ $<fbtest: $(OBJS)$(CC) -o $@ $(OBJS)clean:rm -f fbtest *.o

2.3、源码fbtest.c

  fbtest.c就是应用程序的实际代码

三、编写自己的OpenWrt应用代码

  将fbtest文件夹复制为myapp_test,放置到fbtest相同的目录下

3.1、顶层makefile

  修改顶层makefile如下:

#
# Copyright (C) 2012 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#include $(TOPDIR)/rules.mkPKG_NAME:=myapp_test
PKG_RELEASE:=1PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)include $(INCLUDE_DIR)/package.mkdefine Package/myapp_testSECTION:=utilsCATEGORY:=UtilitiesTITLE:=Frame buffer device testing toolDEPENDS:=@DISPLAY_SUPPORT
endefdefine Build/Configure
endefdefine Build/Compile$(MAKE) -C $(PKG_BUILD_DIR) \CC="$(TARGET_CC)" \CFLAGS="$(TARGET_CFLAGS) -Wall" \LDFLAGS="$(TARGET_LDFLAGS)"
endefdefine Package/myapp_test/install$(INSTALL_DIR) $(1)/usr/sbin$(INSTALL_BIN) $(PKG_BUILD_DIR)/myapp_test $(1)/usr/sbin/
endef$(eval $(call BuildPackage,myapp_test))

3.2、源码makefile

CC = gcc
CFLAGS = -Wall
OBJS = myapp_test.oall: myapp_test%.o: %.c$(CC) $(CFLAGS) -c -o $@ $<myapp_test: $(OBJS)$(CC) -o $@ $(OBJS)clean:rm -f myapp_test *.o

3.3、源码myapp_test.c


#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>#include <sys/types.h>
#include <sys/stat.h>
#include <sys/ioctl.h>
#include <sys/mman.h>
#include <fcntl.h>int main (int argc,char **argv)
{printf ("myapp_test\n");return 0;
}

四、编译自己的OpenWrt应用代码

4.1、配置

  在OpenWrt源码顶级目录下输入下面的命令配置内核

make menuconfig

  依次按照如下顺序选择:
在这里插入图片描述
在这里插入图片描述

4.2、编译

  在OpenWrt源码顶级目录下输入下面的命令编译应用程序

make package/myapp_test/compile V=s

  编译完成之后会在下面的目录中看到我们的应用程序
在这里插入图片描述
  此应用程序和普通的linux应用程序的装载方法一样,不再赘述。

http://www.yayakq.cn/news/211870/

相关文章:

  • 郑州高端模板建站网站被人做跳转改如何举报
  • 西安网站seo优化公司自有服务器 建网站
  • 公司网站开发费用怎么做账360推广登录入口
  • 鸿鑫建设集团有限公司网站如何做徽商网站
  • 想在公司局域网做建网站网站设计过程
  • 网站留言系统是怎么做的个人网站的重要性
  • 济南建站公司效果网站开发新功能
  • 企业网站的开发流程是什么wordpress图表插件
  • 常德网站建设开发哪家好老榕树智能建站系统
  • 八宝山做网站公司做易经类的网站
  • ucenter使用自己做的网站漳州专业网站建设
  • 辽宁建设厅网站什么时候换的网站外链接自己可以怎么做的
  • 建设部网站的诚信平台专门做微信推送的网站
  • 上海网站策划广州外贸公司排名
  • 机关网站建设工作方案网站建设公司测评
  • 大淘客cms网站怎么做花生壳可以用来做网站吗
  • 如何选择大良网站建设眉山市住房和城乡建设局网站
  • 云南省网站开发公司深圳市住房和建设局局长级别
  • 免费开源网站模板厦门注册公司流程
  • 小型公司网站建设360免费wifi电脑版
  • 怎么制作一个网站的二维码wordpress主题nova
  • 做网站广告有哪些职位做漂亮的网站
  • 苗木网站模板浪潮云网站建设
  • 北京网站建设推荐q479185700上快杭州市健康城市建设网站
  • 国内十大旅游网站排名用wordpress做的网站
  • 广告图片网站邯郸信息港发布信息
  • 怎么用虚拟机做网站做电商网站要多少钱
  • 珠海城乡建设网站wordpress图创
  • 奥维网络高端网站建设公司进入wordpress后台
  • 微信网页网站怎么做wordpress博客主题制作视频教程