libstdc ++中的GCC源代码修改 - v3未显示

时间:2015-03-17 20:51:49

标签: c++ gcc std rtti abi

我是GCC源代码的新手。我开始对 libstdc ++ - v3 进行一些简单的修改,因为我需要对我正在处理的项目进行更大的修改。

我下载了GCC 4.8.5源代码并在__cxxabiv1::__cxa_allocate_exception函数中添加了一个print语句,以便知道函数何时被调用。为了测试它,我做了 make -j4 ,之后 make install 。使用这个构建版本的GCC,我编译了一个抛出异常的简单程序。但是,没有显示打印件。

然后我尝试在同一个函数中递增一个全局变量,该变量在我试图编译的程序中声明。使用GDB我意识到全局变量在范围内但从未增加。最后,我尝试将消息写入文件,但文件从未创建过。

我确信正在调用该函数。但我不确定为什么它没有做它应该做的事情。如果我在代码中输错了它就不会编译,但是当它修改时不会反映在程序的行为中。

我需要知道我是做错了什么来测试我正在进行的一些修改,或者我可以阅读某些指南以开始与GCC源代码合作。

1 个答案:

答案 0 :(得分:2)

您需要调整LD_LIBRARY_PATH以指向您的GCC / lib目录,否则您的二进制文件将使用您的系统libstdc++

另一种方式是-static-libstdc++