Tag: 开源

是否有用于Windows驱动程序开发的开源C库(不是c ++)?

是否有用于Windows驱动程序开发的开源C库(不是c ++)? 我正在开发一个网络设备驱动程序,需要一些function,如RegEx,字符串操作,面向对象的C和XML等等…… 谢谢。

Makefile条件包括

我正在尝试编写一个需要ALSA或OSS标头的应用程序。 基本上,如果/etc/oss.conf不存在,我想将一个定义传递给编译器,因为这可能意味着soundcard.h头不存在(随意在那个上纠正我,我还是新的与OSS合作)。 根据OSS文档,您将使用include指令,如下所示: include /etc/oss.conf CFLAGS := -I$(OSSLIBDIR)/include/sys 一个问题。 OSS支持是可选的,所以我想检查标头是否存在,如果存在,则将定义传递给编译器。 问题是,AFAIK无法检查文件是否存在于makefile 规则之外 。 在规则内部,如果我使用if语句,由于某种原因,尝试设置CFLAGS不会改变它: test: $(objects) @if [ -f ${OSS_CONFIG} ]; then \ . ${OSS_CONFIG}; \ CFLAGS+=” -I${OSSLIBDIR} -DUSE_OSS”; \ fi @echo ${CFLAGS} (上面只输出CFLAGS的原始值,即使存在${OSS_CONFIG} 。)这当然非常难看,我想知道是否有更清洁的方法。 或者我正在采取的方式引发一场涉及小猫种族灭绝的全球灾难性事件? 哦,请不要告诉我使用autoconf。

extern C的未定义引用

我正在尝试使用Netbeans(g ++)编译一个包含开源源代码库 Aquila 的程序 。 我按照安装说明进行操作 。 但是当试图编译一个小的测试程序时,我得到了这个错误 In function `Aquila::OouraFft::fft(double const*)’:OouraFft.cpp:(.text+0x24f): undefined reference to `cdft’ OouraFft.h: #include “Fft.h” extern “C” { void cdft(int, int, double *, int *, double *); //prototypes of offending function void rdft(int, int, double *, int *, double *); //second one. } libs文件夹中的C文件包含函数的定义。 导致OouraFft.cpp中的实际错误的行: // let’s call the C function […]

我怎样才能编译程序员Dvorak?

我正在尝试编译开源项目Programmer Dvorak 。 问题是它有点旧,并没有使用当前版本的构建工具构建。 您可以在我的项目的Google代码页上看到我在线修改的完整源代码。 版本2是原始项目中未修改的源文件。 修订版3是我做出所有重大更改的地方。 您可以在此处看到两个修订版之间的差异 。 剩下的唯一明显问题是一些LINK警告: LNK4254 (例如section ‘.edata’ (40000040) merged into ‘.data’ (C0000040) with different attributes. ) – 我在这里问了一个独立版本的问题。 LNK4210 (例如.CRT .CRT section exists; there may be unhandled static initializers or terminators ) 我该如何修复这些警告? 我可以忽略它们吗? 尽管有这些警告,它仍然会产生一个exe。 但是,如果我继续运行它,它将无法正确安装,我需要求助于系统还原才能再次安装正式版本。 这可能是因为警告或仅仅是因为我没有正确修改项目。 我还需要做些什么来使这个项目可以安装? 构建过程(以及对我的修改的解释): 它说您需要Windows DDK,但似乎Windows驱动程序工具包已经取代它,所以我得到了它。 我只安装了“Build Environments”。 1.根据Readme.txt ,您应该运行: build-layout && build-installer 2.运行build-layout.bat […]

C – 开始一个大项目。 文件/目录结构和名称。 需要好的例子

启动一个新的大型C多平台项目,应遵循哪些规则以避免以后遇到困难? 例如,作为一个新的开发人员,我可能很难在Linux内核源代码中自我导航 – 这是一个很好的例子,具有高度可演化但难以步入的软件结构,具有不完整的目录结构(例如声音目录和拱门 )相同的目录级别)。 作为项目架构师,我该怎么做以避免以后的陷阱? 当然,我需要非常直观和自我一致的C语言和文件命名约定。 但是什么是好的风格,什么不是? 我应该只有一个目录还是数十个目录? 我应该将所有头文件放在一个公共包含目录中吗? 你能不能给我一个很好的例子? (任何开源C项目)

c / c ++ NLP库

我正在寻找一个用于c / c ++的开源自然语言处理库,特别是我对词性标注感兴趣。

为什么大多数C中最大的开源项目?

我和朋友正在讨论,我们想知道为什么这么多开源项目决定用C而不是C ++。 Apache,GTK,Gnome等项目选择了C,但为什么不用C ++,因为它几乎一样? 我们正在寻找导致这些项目(不仅是我列出的项目,而且是所有C项目)的原因,而不是使用C而不是C ++。 主题可以是性能,易编程,调试,测试,概念等。

从哪里开始阅读SQLite源代码?

我想了解如何实现sqlite。 并且,想要阅读源代码(我已经下载了源代码)。 我应该开始考虑哪部分代码?

是否有适用于C或C ++的跨平台gzip处理器库?

我想要一些库(API)来打开,搜索,读取,写入……(用一个词来处理 )gzip文件。 C或C ++是否有任何开源跨平台的?

组织我的C项目代码及其外部库的最佳方法是什么?

我正在开始一个新的C项目,主要是基于OSS的。 它也将在SourceForge上,我想借此机会学习组织这种代码的既定最佳实践。 我正在使用像libcurl和libz这样的库,我将使用MinGW和MSYS编译它。 我将分发我正在使用的所有库的源代码副本,因此下载源代码的人不必去寻找依赖项。 我该怎么称呼我存储库的目录? 到目前为止,我在以下方面犹豫不决: lib,因为它们是库。 但是,’lib’在UNIX世界中有不同的含义。 src,因为它们是源文件。 第三方,因为我没有写。 我应该在哪里编译这些库? 我应该简单地将它们配置并安装到系统根目录,还是应该设置一个所有库应该编译到的目录,并从那里进行链接? 显然,这会对我的Makefile产生影响。 我该怎么办呢? 我应该遵循既定的惯例吗? 他们写在某个地方吗?