我目前正在进行的实验使用的软件库具有复杂的源历史记录,并且没有明确定义的许可证.合理化事物并在固定许可下发布将是一项相当大的工作.
它也打算运行一个随机的unixish平台,只有我们支持的一些libc有GNU getline,但现在代码期望它.
有没有人知道在限制较少的许可下可以重新实现GNUgetline语义?
编辑::我问,因为谷歌没有帮助,我想尽可能避免写一个(这可能是一个有趣的练习,但它不能最好地利用我的时间.)
更具体地说,有问题的界面是:
ssize_t getline (char **lineptr, size_t *n, FILE *stream);
Run Code Online (Sandbox Code Playgroud) 我很难安装一个R库,需要在C中进行一些编译.我正在使用Mac OSX Snow Leopard机器并试图安装这个R包(这里).
我已经看过谈论mac上的getline 的线程,并尝试了一些这些修复,但没有任何工作!我是新手,不知道任何C,所以这可能是原因!谁能给我一些关于如何修改这个包中的文件以使其安装的技巧?任何帮助都会受到怀疑!这是我得到的错误:
** libs
** arch - i386
g++ -arch i386 -I/Library/Frameworks/R.framework/Resources/include -I/Library/Frameworks/R.framework/Resources/include/i386 -I/usr/local/include -D_FASTMAP -DMAQ_LONGREADS -fPIC -g -O2 -c bed2vector.C -o bed2vector.o
In file included from /usr/include/c++/4.2.1/backward/strstream:51,
from bed2vector.C:8:
/usr/include/c++/4.2.1/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or …Run Code Online (Sandbox Code Playgroud)