- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在斯坦福在线旁听 cs107
我遇到的问题是作业 6,当我在终端中输入“make”时,会弹出错误消息。基本上,我错过了两个头文件,我猜这可以从预编译的 .lib 文件中获取。但不知怎的,它就是行不通。
这是原始 make 文件的一部分:
CFLAGS = -D_REENTRANT -g -Wall -D__ostype_is_$(OSTYPE)__ -std=gnu99 -I/usr/class/cs107/include/ -Wno-unused-function $(DFLAG)
LDFLAGS = -L/usr/class/cs107/assignments/assn-6-rss-news-search-lib/$(OSTYPE) -L/usr/class/cs107/lib -lexpat -lrssnews $(PLATFORM_LIBS) $(THREAD_LIBS)
PFLAGS= -linker=/usr/pubsw/bin/ld -best-effort -threads=yes -max-threads=1000
编辑:
当我说“即使没有线程实现,它也应该编译”时,我的意思是它应该在学生没有进一步线程实现的情况下编译。
这是线程的错误消息:
gcc -D_REENTRANT -g -Wall -D__ostype_is_linux__ -std=gnu99 -I/usr/class/cs107/include/ -Wno-unused-function -c -o rss-news-search.o rss-news-search.c
rss-news-search.c: In function ‘main’:
rss-news-search.c:109:3: warning: implicit declaration of function ‘InitThreadPackage’ [-Wimplicit-function-declaration]
gcc rss-news-search.o -D_REENTRANT -g -Wall -D__ostype_is_linux__ -std=gnu99 -I/usr/class/cs107/include/ -Wno-unused-function -L/home/h/cs107/assn-6-rss-news-search-lib/linux -L/usr/class/cs107/lib -L. -lexpat -lrssnews -lnsl -lpthread -lthread_107_linux -o rss-news-search
/usr/bin/ld: cannot find -lthread_107_linux
collect2: ld returned 1 exit status
make: *** [rss-news-search] Error 1
这是没有 $(THREAD_LIBS) 的错误消息:
gcc -D_REENTRANT -g -Wall -D__ostype_is_linux__ -std=gnu99 -I/usr/class/cs107/include/ -Wno-unused-function -c -o rss-news-search.o rss-news-search.c
rss-news-search.c: In function ‘main’:
rss-news-search.c:109:3: warning: implicit declaration of function ‘InitThreadPackage’ [-Wimplicit-function-declaration]
gcc rss-news-search.o -D_REENTRANT -g -Wall -D__ostype_is_linux__ -std=gnu99 -I/usr/class/cs107/include/ -Wno-unused-function -L/home/h/cs107/assn-6-rss-news-search-lib/linux -L/usr/class/cs107/lib -L. -lexpat -lrssnews -lnsl -lpthread -o rss-news-search
rss-news-search.o: In function `main':
/home/h/cs107/assn-6-rss-news-search/rss-news-search.c:109: undefined reference to `InitThreadPackage'
collect2: ld returned 1 exit status
make: *** [rss-news-search] Error 1
在后一种情况下,如果我注释掉“InitThreadPackage”,它就可以正常编译。
最佳答案
这是编译项目的过程:
创建文件 assn-6-rss-news-search/thread_107.h
,并将其放入其中:
/* Empty header file */
复制库 librssnews.a
来自assn-6-rss-news-search-lib/linux/
至assn-6-rss-news-search/
修改文件rss-news-search.c
通过注释对函数的调用:InitThreadPackage
在线109:
//InitThreadPackage(false);
修改Makefile
包含当前目录的路径(以便能够链接到您之前复制的库 librssnews.a
):
行27应如下所示:
LDFLAGS = -L/usr/class/cs107/assignments/assn-6-rss-news-search-lib/$(OSTYPE) -L/usr/class/cs107/lib -L. -lexpat -lrssnews $(PLATFORM_LIBS) $(THREAD_LIBS)
然后:
make clean
make
编辑:
当您收到此错误时cannot find lthread_107_linux
,编辑您的 Makefile 以删除此 $(THREAD_LIBS)
第27行:
LDFLAGS = -L/usr/class/cs107/assignments/assn-6-rss-news-search-lib/$(OSTYPE) -L/usr/class/cs107/lib -L. -lexpat -lrssnews $(PLATFORM_LIBS)
关于CS107 作业文件无法编译,缺少 expat.h 和 thread_107.h 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11925352/
我很难找到为什么在共享库(它是 firefox xpcom 组件)中链接静态库(包含 expat 的 XMP)时出现未解析的外部符号。 我在 Windows 下使用 Windows 编译器(标志:“-
当我从我的 XML 文档中打印出信息时,我在每一行之前得到了 ��。这是我的 XML 文档。 Tove Jani Reminder Don't forget me this weekend! 这
我找不到任何关于 expat-parser 在 XML 标签方面支持和不支持的文档。我知道在一般情况下,expat 让事件处理程序(由用户实现)处理标签,但我特别想知道 expat 是否支持任何类型的
我正在尝试安装node-expat。我已经尝试了我能找到的所有建议。运行 npm install node-expat 时,我没有收到任何构建错误。我已经放入了所有依赖项和构建工具包,尝试了 npm
我的项目依赖于 expat。我的问题是我无法链接到 expat。我使用的是Ubuntu(debian环境),需要使用cmake来构建makefile。 我尝试下载源代码并在我的 CMakeLists.
基于树的解析器:这种解析器把 XML 文档转换为树型结构。它分析整篇文档,并提供了对树中元素的访问,例如文档对象模型 (DOM)。 基于时间的解析器:将 XML 文档视为一系列的事件。当某个具体的
我刚开始使用 expat。我试图弄清楚 XML_SetUserData 的用途。在我的例子中,我有一个 A 类对象列表,我需要在解析 XML 流时填充这个列表。 到目前为止,我计划使用单例来表示这个单
我已经用 expat 解析器注册了三个处理程序:- 开始-结尾- 文字 然后从主程序中,我读取了 xml 文件,对其进行缓冲并调用 XML_Parse API。像这样: try { if( ! XML
我正在使用 expat 编写 xml 解析器。刚看到这个: XML_SetElementHandler XML_Parser parser, XML_StartElementHan
我正在将 bluez 交叉编译到我的板上,但无法编译 dbus。 配置时,出现此错误消息: checking for XML_ParserCreate_MM in -lexpat... no conf
我正在使用 MingW 在 Windows 上编写 C 程序,并希望使用 EXPAT XML 库。我想静态编译我的程序,所以我需要静态 .a 库。 有什么方法可以将 EXPAT 编译成 Windows
我有一个二进制流,其中包含串联的 XML 文档。使用如下调用以任意大小的 block 处理流: int expat_status = XML_Parse(parser->expat, buffer,
这是我第一次使用外部 header ,我对外籍人士一无所知。Expat 官方网站对于初学者来说没什么用。我需要使用 expat.h 用 C 语言编译 XML 解析器代码。我已经下载了 expat 文件
我正在使用 expat 读取 xml 文件。我想从 xml 文件中指定的配置中填充我的一些类成员变量。我已经定义了我的 startelement 处理程序, void Start(void *data
Expat 有一个用于 lib 的 .la 文件。我正在尝试使用 XCode 链接它。 我所做的是将目标的“其他链接标志”设置为 libexpat.la,并将“库搜索路径设置为 .la 文件所在的位置
我对 expat 的 XML 验证有疑问。我没有找到可以帮助我验证 xml 文档的文档或 wiki。 是否可以使用 libexpat 和 C 程序通过 xml 模式(xsd 文件)验证我的 XML 文
https://github.com/TooTallNate/node-expat/tree/gyp和node-gyp用于编译它。生成了node_expat.node。在代码中引用时出现以下错误: m
我按照these instructions制作了本地wsdl。 我的本地WSDL中的一些行: 当我像这样使用python时: from SOAPpy import WSDL serv
import xml.parsers.expat def start_element(name, attrs): print('Start element:', name, attrs) de
我正在使用 XML-Simple 和 XML-SAX-Expat 来解析包含外部实体的文档。我这样声明我的实体: 我指的是同一目录下的另一个文件。 但是,它正在我的当前工作目录中搜索该文件,而不是根
我是一名优秀的程序员,十分优秀!