GoAhead_在Eclipse下尝试构建工程

2023-10-18 06:10

本文主要是介绍GoAhead_在Eclipse下尝试构建工程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 1.新建C工程并设置交叉编译器
  • 2. Eclipse 导入已有Makefile工程
  • 3. Build
    • 3.1 添加路径
    • 3.2 设置Debug 启动参数
    • 3.3 错误:XML Parsing Error: syntax error
    • 3.4 在GoAhead增加http 头部内容

1.新建C工程并设置交叉编译器

在这里插入图片描述
在这里插入图片描述
工程文件上出现莫名的红色的‘X’
在这里插入图片描述

program “g++” not found in PATH .

命令行敲“g++”,提示Command “g++” not found, but can be install with:

sudo apt-get install g++

安装g++成功:
在这里插入图片描述
在启动之前,设置Vbox的网络为网卡桥接,选择无线网络。就可以在虚拟机下连上网。安装成功后,按照如下步骤设置即可消除之前的g++没有发现的错误。
在这里插入图片描述

2. Eclipse 导入已有Makefile工程

Eclipse支持makefile导入工程,这样工程的效率很大提高。
New–>others–> C/C++ --> MakeFile Project with Existing Code --> 输入工程名+导入文件
在这里插入图片描述

3. Build

点击project–>Build All,此时在Console窗口输出相关的编译信息,和在目录下输入make时一致。
在这里插入图片描述
可是,这个编译使用的是GCC编译,看编译信息“build/linux-x64-default”可看出。

3.1 添加路径

/etc/profile和~/.bashrc

3.2 设置Debug 启动参数

这里是一定要配置启动参数。
goahead运行时,需要一定的配置参数。–home就是切换到某个目录
/opt/goahead-4.1.0/test/web 是网页放置的目录。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Action ajaxtest is not defined,是因为网页请求的函数名和goahead中定义的不一样。
Segmentation fault错误:C语言错误造成的。
在这里插入图片描述

3.3 错误:XML Parsing Error: syntax error

在这里插入图片描述
虽然定时请求成功了,出现XML Prasing Error:syntax error错误。但是在Windows,使用Chrome浏览器请求并没有出现该反馈。在Ubuntu上使用的是Foxfire浏览器,是否是浏览器的差异导致。

  • 解决:
    网上查说:这是FireFox有的,Chrome没有,解决的办法是增加Content-Type:”text/plain”
    参考解决方法
If you look in the developer console, you can see that Firefox is interpreting the plain text data as another format (likely XML). Firefox tires to parse the data as XML, but can't because it's not valid XML which results in "Syntax error" being printed to the console.
Fixing this problem for me involved editing the server so it returned the following header:
Content-Type: "text/plain"
This only appeared to be an issue with Firefox, Chrome did not encounter this issue. There is a Firefox bug here which seems to touch on the issue.

3.4 在GoAhead增加http 头部内容

查阅API发现有两个函数

int websWriteHeader (Webs *wp, cchar *key, cchar *fmt, ...)
//This routine writes a response header. It should be invoked after calling websWriteHeaders to write the standard headers and before websWriteEndHeaders. This routine differs from websWrite in that it traces header values to the log
void websWriteHeaders (Webs *wp, ssize contentLength, cchar *redirect)
//Write a set of standard response headers.

修改如下:则不会出现XML Parse Error错误。

1.websWriteHeaders(wp, -1, 0);  
2.websWriteHeader(wp, "Content-Type", "application/json");  
3.websWriteEndHeaders(wp); 

备注:Json数据有特定的Content-Type,是application/json

在这里插入图片描述

这篇关于GoAhead_在Eclipse下尝试构建工程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/230705

相关文章

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

嵌入式QT开发:构建高效智能的嵌入式系统

摘要: 本文深入探讨了嵌入式 QT 相关的各个方面。从 QT 框架的基础架构和核心概念出发,详细阐述了其在嵌入式环境中的优势与特点。文中分析了嵌入式 QT 的开发环境搭建过程,包括交叉编译工具链的配置等关键步骤。进一步探讨了嵌入式 QT 的界面设计与开发,涵盖了从基本控件的使用到复杂界面布局的构建。同时也深入研究了信号与槽机制在嵌入式系统中的应用,以及嵌入式 QT 与硬件设备的交互,包括输入输出设

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

maven 编译构建可以执行的jar包

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」👈,「stormsha的知识库」👈持续学习,不断总结,共同进步,为了踏实,做好当下事儿~ 专栏导航 Python系列: Python面试题合集,剑指大厂Git系列: Git操作技巧GO

嵌入式Openharmony系统构建与启动详解

大家好,今天主要给大家分享一下,如何构建Openharmony子系统以及系统的启动过程分解。 第一:OpenHarmony系统构建      首先熟悉一下,构建系统是一种自动化处理工具的集合,通过将源代码文件进行一系列处理,最终生成和用户可以使用的目标文件。这里的目标文件包括静态链接库文件、动态链接库文件、可执行文件、脚本文件、配置文件等。      我们在编写hellowor

利用命令模式构建高效的手游后端架构

在现代手游开发中,后端架构的设计对于支持高并发、快速迭代和复杂游戏逻辑至关重要。命令模式作为一种行为设计模式,可以有效地解耦请求的发起者与接收者,提升系统的可维护性和扩展性。本文将深入探讨如何利用命令模式构建一个强大且灵活的手游后端架构。 1. 命令模式的概念与优势 命令模式通过将请求封装为对象,使得请求的发起者和接收者之间的耦合度降低。这种模式的主要优势包括: 解耦请求发起者与处理者

Jenkins构建Maven聚合工程,指定构建子模块

一、设置单独编译构建子模块 配置: 1、Root POM指向父pom.xml 2、Goals and options指定构建模块的参数: mvn -pl project1/project1-son -am clean package 单独构建project1-son项目以及它所依赖的其它项目。 说明: mvn clean package -pl 父级模块名/子模块名 -am参数

JAVA用最简单的方法来构建一个高可用的服务端,提升系统可用性

一、什么是提升系统的高可用性 JAVA服务端,顾名思义就是23体验网为用户提供服务的。停工时间,就是不能向用户提供服务的时间。高可用,就是系统具有高度可用性,尽量减少停工时间。如何用最简单的方法来搭建一个高效率可用的服务端JAVA呢? 停工的原因一般有: 服务器故障。例如服务器宕机,服务器网络出现问题,机房或者机架出现问题等;访问量急剧上升,导致服务器压力过大导致访问量急剧上升的原因;时间和

利用Django框架快速构建Web应用:从零到上线

随着互联网的发展,Web应用的需求日益增长,而Django作为一个高级的Python Web框架,以其强大的功能和灵活的架构,成为了众多开发者的选择。本文将指导你如何从零开始使用Django框架构建一个简单的Web应用,并将其部署到线上,让世界看到你的作品。 Django简介 Django是由Adrian Holovaty和Simon Willison于2005年开发的一个开源框架,旨在简

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群 华为云最近正在举办828 B2B企业节,Flexus X实例的促销力度非常大,特别适合那些对算力性能有高要求的小伙伴。如果你有自建MySQL、Redis、Nginx等服务的需求,一定不要错过这个机会。赶紧去看看吧! 什么是华为云Flexus X实例 华为云Flexus X实例云服务是新一代开箱即用、体