草庐IT

c++ - nm 命令中的 "symbol value"是什么意思?

当您列出静态库的符号表时,例如nmmylib.a,每个符号旁边显示的8位十六进制是什么意思?那是代码中每个符号的相对位置吗?另外,多个符号可以具有相同的符号值吗?一堆不同的符号都具有00000000的符号值有什么问题吗? 最佳答案 这是我用C编写的一段代码:#include#includevoidfoo();intmain(intargc,char*argv[]){foo();}voidfoo(){printf("Foobarbaz!");}我在该代码上运行了gcc-cfoo.c。这是nmfoo.o显示的内容:00000000000

c++ - 错误 : symbol(s) not found for architecture x86_64, collect2:ld 返回 1 个退出状态

我一直在为Qt上的一个问题苦苦挣扎。这是我的代码:hexbutton.h:#ifndefHEXBUTTON_H#defineHEXBUTTON_H#include#include#includeclassHexButton:publicQPushButton{Q_OBJECTpublic:HexButton(QWidget*parent,QIcon&icon,inti,intj);publicslots:voidchangeIcon();};#endif//HEXBUTTON_HHexbutton.cpp:#include"hexbutton.h"HexButton::HexButto

c++ - 共享库或 dylib 中 undefined symbol 的处理方式是什么?

我有一个用于linux的Makefile,我将其移植到Darwin。makefile需要一堆.o文件并将它们链接在一起成为一个.so共享对象。好的,所以我想(我错了吗?)Darwin最好的模拟是dylib。所以我将-shared标志更改为-dynamiclib。现在我链接到dylib的代码依赖于许多外部库。当我尝试构建dylib时,我收到错误消息,提示存在undefinedreference。但是LinuxMakefile没有在创建.so文件的构建步骤中指定任何-lwhatever或-L/path/whatever选项。嗯?这是因为当您创建ELF.so文件时,默认情况下它会保留未解析的

php - Laravel Homestead Mongo 安装导致 PHP 错误 undefined symbol : php_json_serializable_ce in Unknown on line 0

PHPWarning:PHPStartup:Unabletoloaddynamiclibrary'/usr/lib/php/20151012/mongodb.so'-/usr/lib/php/20151012/mongodb.so:undefinedsymbol:php_json_serializable_ceinUnknownonline0安装MongoDB后,现在每当我从终端运行任何php命令时都会出现此错误:phpartisanphp-v我已经搜索了2天。我见过这些:PHPunabletoloaddynamiclibrary(mongo.so)https://github.com

php - Laravel Homestead Mongo 安装导致 PHP 错误 undefined symbol : php_json_serializable_ce in Unknown on line 0

PHPWarning:PHPStartup:Unabletoloaddynamiclibrary'/usr/lib/php/20151012/mongodb.so'-/usr/lib/php/20151012/mongodb.so:undefinedsymbol:php_json_serializable_ceinUnknownonline0安装MongoDB后,现在每当我从终端运行任何php命令时都会出现此错误:phpartisanphp-v我已经搜索了2天。我见过这些:PHPunabletoloaddynamiclibrary(mongo.so)https://github.com

c++ - OpenCV 架构 x86_64 的 undefined symbol : error

在此问题被标记为重复问题之前,请阅读结尾。感谢观看。我使用Homebrew软件设置了openCV。这些是我使用的命令:brewtaphomebrew/sciencebrewinstallopencv我正在使用我在网上找到的以下简单文件来测试我的设置://Exampleshowinghowtoreadandwriteimages#include#includeusingnamespacecv;intmain(intargc,char**argv){//Loadanimagefromfile-changethisbasedonyourimagenameMatimg=imread("my_i

c++ - QtCreator 项目上的 "Symbol(s) not found for architecture x86_64"

我收到了错误Symbol(s)notfoundforarchitecturex86_64试图在QtCreator上编译一个项目。当我尝试创建用户定义类的实例Layer时会发生这种情况。该类由一个headerlayer.h和一个实现layer.cpp组成。它经过测试并在另一个程序中工作。在我的项目中,它包含在qtwidget.h中,当我尝试在qtwidget.cpp上使用它时会发生错误。例如:Layertext("pq.txt",0.5,0.5,0.5);在qtwidget.cpp上有这一行就足以显示错误。这是一个如此普遍的错误,我不知道如何进一步隔离它,但如果它有帮助,我已将整个项目包

java - dyld : Symbol not found: _JNI_CreateJavaVM

这个错误是什么意思?我需要做什么来解决它?我正在尝试在MacOSElCaptain上为node.js(特别是xslt4node)运行基于java的模块,但每次我收到此错误。对于Windows用户来说,一切似乎都正常。完整的错误如下:dyld:lazysymbolbindingfailed:Symbolnotfound:_JNI_CreateJavaVMReferencedfrom:/projects/main-project/node_modules/java/build/Release/nodejavabridge_bindings.nodeExpectedin:flatnamesp

node.js - dyld : lazy symbol binding failed: Symbol not found: _node_module_register

我已尝试重新安装和重建npm,但问题仍然存在。最初,问题出在模块mongodb:我没有那个包,所以我使用这个命令npminstallmongodbmongodb.它显示以下错误:dyld:未找到符号:_node_module_register 最佳答案 尝试删除您的node_modules文件夹并再次运行npminstall。rm-rfnode_modules/npminstall这应该可以解决它。 关于node.js-dyld:lazysymbolbindingfailed:Symbo

c++ - Python ImportError - undefined symbol - 用于自定义 C++ 模块

我一直在Ubuntu11.04上使用OpenCV2.3到2.4.2开发C++中的Python模块。OpenCV是从源代码构建的。我没有使用Ubuntu存储库中的OpenCV版本。我的Python模块编译没有问题,并且在Python中正确加载。但是,当我在Ubuntu11.10或12.04上编译此模块时,尝试在Python中加载它时会收到带有消息“undefinedsymbol”的ImportError。这是我编译模块的方式:g++-fPIC-shared`pkg-config--cflags--libspython``pkg-config--cflags--libsopencv`-I/