我下载了一个c ++项目,并且能够使用cmake生成的makefile编译它.
但是当我尝试在项目的一个.hh文件中添加我自己的一系列.h文件时,我开始得到一百万个错误,其中一个是:
错误:使用std :: cout对类范围内的非成员使用声明;
当包含的.h文件在
using std::cout其他地方使用时,它可以工作,但是当添加到此项目时,它会出现此错误.
可能是什么问题?
using std::cout;
using std::endl;
class TextManager : public FileManager {
public:
TextManager (const char * filename);
void scanFile (Image &image, Scene &scene);
void scanObjectModel (Image &image, Scene &scene);
void getImageData (Image &image);
void getMaterialData (Scene &scene);
void getLightData (Scene &scene);
void getSphereData (Scene &scene);
void getPlaneData (Scene &scene);
void getTriangleData (Scene &scene);
int getLineValue (int size);
void getLineValue2 (float (&lineNumbers) [10], Scene &scene, int &lineNumbersIndex);
void getVerticesValues (int initPos, …Run Code Online (Sandbox Code Playgroud) 我有一个 Ogl 程序,我用它来编译得很好。然而,几个月没有处理它之后,我回来了,发送我的 IDE 代码块来编译它,然后返回:
/.../glew-2.1.0/include/GL/glew.h|1205|错误:GL/glu.h:没有这样的文件或目录|
/.../glfw-2.7.9/include/GL/glfw.h|176|错误:GL/gl.h:没有这样的文件或目录|
因此它打开 glew 标题并指向这些行:
#include <GL/gl.h>
#include <GL/glu.h>
Run Code Online (Sandbox Code Playgroud)
一些观察。1)上次效果很好。2)我不使用谷氨酸。
我相信某些配置被无意中更改了。问题是:在哪里?
我的第一个假设是 IDE。我看了看,一切似乎都正确。在项目构建选项的“链接器设置”选项卡中,glfw 和 glew 的 .so 库文件就在那里。在“搜索目录”选项卡中,有指向 glew/include/GL 和 /glfw/include/GL 的链接
第一个目录中是 glfw 标头。对于后者,glew.h 和其他三个与 glew 相关的头文件。
在整个系统上寻找 glu.h 和 gl.h 头文件,我什么也没找到。我做了一个
sudo apt-get install mesa-common-dev
但当我尝试编译程序时它没有改变任何东西。
是否还有其他代码块设置需要调整而我缺少?关于系统配置错误,我还能在哪里找到有用的信息?哪个原因似乎更有可能?
我有一个项目,我正在生成许多提交,所以它占用的空间正在快速增长.由于我有一个gitlab页面提交被推送,我认为最好摆脱我本地git目录上的这些旧提交,因为我总是可以从gitlab获取它们.
为此,我只删除了本地.git目录,并创建了一个新目录.我用了这个序列
git init
git add .
git push -m "test"
git add origin git@myGitPage.../myGitPage.git
Run Code Online (Sandbox Code Playgroud)
但是最后一个命令导致了
致命的:pathspec'genin'与任何文件都不匹配
然后我恢复了旧的.git目录,做了一些修改并将它们推送到gitlab.然后删除了本地git dir,再次尝试使用从头创建的新git,但正如预期的那样,它再次无法工作.
在恢复旧的git时,我正在恢复旧版本,因为我将新版本推送到gitlab,现在当我发送一个
git push origin master
Run Code Online (Sandbox Code Playgroud)
用这个旧版本
我收到了
![拒绝]主 - >主(非快进)错误:未能将某些引用推送到'git @ ...'为了防止您丢失历史记录,拒绝非快进更新在推送之前合并远程更改再次.有关详细信息,请参阅"git push --help"中的"关于快进的注意事项"部分.
如果我下载,然后从gitlab解压缩最新版本,我会收到相同的:
致命的:pathspec'genin'与任何文件都不匹配
要召唤它,使用全新的git目录或gilab的最新版本,我收到上述错误消息.随着已经老了,我收到的消息提到快速前进.
我怎么能解决所有这些混乱,回到我的常规
git add .
git push -m "anything"
git push origin master
Run Code Online (Sandbox Code Playgroud)
不需要在我的电脑上保留旧的提交,但没有在gitlab上删除它们?