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

相关文章

一文详解如何从零构建Spring Boot Starter并实现整合

《一文详解如何从零构建SpringBootStarter并实现整合》SpringBoot是一个开源的Java基础框架,用于创建独立、生产级的基于Spring框架的应用程序,:本文主要介绍如何从... 目录一、Spring Boot Starter的核心价值二、Starter项目创建全流程2.1 项目初始化(

使用Java实现通用树形结构构建工具类

《使用Java实现通用树形结构构建工具类》这篇文章主要为大家详细介绍了如何使用Java实现通用树形结构构建工具类,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录完整代码一、设计思想与核心功能二、核心实现原理1. 数据结构准备阶段2. 循环依赖检测算法3. 树形结构构建4. 搜索子

使用Python和python-pptx构建Markdown到PowerPoint转换器

《使用Python和python-pptx构建Markdown到PowerPoint转换器》在这篇博客中,我们将深入分析一个使用Python开发的应用程序,该程序可以将Markdown文件转换为Pow... 目录引言应用概述代码结构与分析1. 类定义与初始化2. 事件处理3. Markdown 处理4. 转

Java使用Mail构建邮件功能的完整指南

《Java使用Mail构建邮件功能的完整指南》JavaMailAPI是一个功能强大的工具,它可以帮助开发者轻松实现邮件的发送与接收功能,本文将介绍如何使用JavaMail发送和接收邮件,希望对大家有所... 目录1、简述2、主要特点3、发送样例3.1 发送纯文本邮件3.2 发送 html 邮件3.3 发送带

Python结合Flask框架构建一个简易的远程控制系统

《Python结合Flask框架构建一个简易的远程控制系统》这篇文章主要为大家详细介绍了如何使用Python与Flask框架构建一个简易的远程控制系统,能够远程执行操作命令(如关机、重启、锁屏等),还... 目录1.概述2.功能使用系统命令执行实时屏幕监控3. BUG修复过程1. Authorization

nginx-rtmp-module构建流媒体直播服务器实战指南

《nginx-rtmp-module构建流媒体直播服务器实战指南》本文主要介绍了nginx-rtmp-module构建流媒体直播服务器实战指南,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. RTMP协议介绍与应用RTMP协议的原理RTMP协议的应用RTMP与现代流媒体技术的关系2

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

Golang使用etcd构建分布式锁的示例分享

《Golang使用etcd构建分布式锁的示例分享》在本教程中,我们将学习如何使用Go和etcd构建分布式锁系统,分布式锁系统对于管理对分布式系统中共享资源的并发访问至关重要,它有助于维护一致性,防止竞... 目录引言环境准备新建Go项目实现加锁和解锁功能测试分布式锁重构实现失败重试总结引言我们将使用Go作

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

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

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

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