草庐IT

make-shared

全部标签

c++ - 尽管文件存在,但已编译的 C++ 程序在另一个系统上引发 "cannot open shared object file"

我写了一个小程序,需要一些库,包括libboost_filesystem、libboost_program_options和libcurl。我在家里的机器上编译它,然后把二进制文件带到我工作的电脑上进行测试。但是当我尝试启动程序时它会给出以下错误消息:errorwhileloadingsharedlibraries:libboost_filesystem.so.1.42.0:cannotopensharedobjectfile但是当我搜索这个文件时,我发现它存在于:/usr/lib/libboost_filesystem.so.1.42.0我的程序在编译/链接过程中有什么问题吗?如果是

linux - := and += in make file?有什么区别

以下语句的工作区别是什么?LDDIRS:=-L$(ORACLE_LIB)LDDIRS+=-L$(ORACLE_LIB) 最佳答案 :=(SimplyExpandedVariable)值被扫描一次并为所有扩展任何定义变量时对其他变量和函数的引用。例如x:=fooy:=$(x)栏x:=later所以上面等同于y:=foobarx:=later+=用于将更多文本附加到变量,例如objects=main.ofoo.obar.oobjects+=new.o这会将对象设置为“main.ofoo.obar.onew.o”=为递归展开的变量,取值为

c++ - tr1::shared_ptr 和 boost::shared_ptr 的区别?

tr1::shared_ptr和boost::shared_ptr有什么区别吗?如果有,是什么? 最佳答案 不,boostshared_ptr的文档说:ThisimplementationconformstotheTR1specification,withtheonlyexceptionthatitresidesinnamespaceboostinsteadofstd::tr1. 关于c++-tr1::shared_ptr和boost::shared_ptr的区别?,我们在StackOv

c++ - 如何在最多进行 3N 次比较时实现 std::make_heap ?

我查看了C++0x标准,发现make_heap的比较次数不应超过3*N。IE。heapify无序集合可以在O(N)中完成/*@briefConstructaheapoverarangeusingcomparisonfunctor.为什么是这样?来源没有给我任何线索(g++4.4.3)while(true)+__parent==0不是线索,而是对O(N)行为的猜测templatevoidmake_heap(_RandomAccessIterator__first,_RandomAccessIterator__last,_Compare__comp){const_DistanceType_

ruby - 在 Mac OS 10.5.8 上通过 RVM 安装 Ruby 1.8.7-p302 时运行 make 时出错

运行“rvminstall1.8.7-p302”提供以下反馈:rich-macbook:~rich$rvminstall1.8.7-p302InstallingRubyfromsourceto:/Users/rich/.rvm/rubies/ruby-1.8.7-p302,thismaytakeawhiledependingonyourcpu(s)...ruby-1.8.7-p302-#fetchingruby-1.8.7-p302-#extractedto/Users/rich/.rvm/src/ruby-1.8.7-p302(alreadyextracted)Applyingpat

windows - Access 2010 on shared server 编译麻烦

我有一个access2012应用程序,在我对面的同事尝试运行它之前,它工作得很好。我们共享一个服务器。我编译的时候,他跑不了。当他编译它时,角色被颠倒了。他可以运行它,但我不能。Access的版本是一样的。我在这里错过了什么? 最佳答案 确定故障系统首先,您应该在其他机器上测试每个编译后的版本,以确定您或您的同事中的哪一个可能是问题的根源。如果您已隔离出现问题的单个特定计算机,则完全卸载Office并重新安装它可能是一件好事;其他东西可能已损坏。共享数据库当您说共享服务器时,我希望您不是从共享网络文件夹运行Access数据库,而是将

windows - Cygwin,如何为在根目录和任何子目录中找到的所有 makefile 运行 "make"?

我有一个由各种子目录组成的目录。在这些子目录中的每一个中都有一个makefile。在根目录下,还有一个make文件。我需要在cygwin中执行一条make指令,该指令对主目录和任何子目录中的所有makefile执行“make”。任何想法如何完成这个? 最佳答案 这是我见过的常见方式。在“主”Makefile内部将类似于此代码。all:cdlibrary&&$(MAKE)all&&cd..cdprograms&&$(MAKE)all&&cd..cdtests&&$(MAKE)all&&cd..ref

c make文件,如何制作一个能编译四个源文件的文件?

这是我的作业。我正在寻找有关如何制作将编译三个源文件的“makefile”的帮助。其中将命名为“timestable.ctablein.ctableout.ctimestable.h”。那是四个源文件。我已经创建了一个makefile来执行此操作,我认为这是正确的,但我不确定如何测试它以查看它是否可以编译?这是我的makefile的内容:timestable.exe:timestable.ctablein.ctableout.ctimestable.hcltimestable.ctablein.ctableout.ctimestable.h这是正确的吗?此生成文件必须使用VisualS

php - 使用 SWIG 在 PHP 中包装 boost::shared_ptr

如果我使用SWIG包装这个C++函数:boost::shared_ptrClient::create(){returnboost::shared_ptr(newClient());}然后在PHP中调用它:$client=Client::create();echogettype($client);$client的类型是resource,不是object,所以我不能调用Client方法。包装此功能的选项有哪些?我正在为其他人的C++库创建一个PHP包装器,因此重新编写代码以不使用boost::shared_ptr并不是一个真正的选择。这是迄今为止我想出的唯一解决方案:MyClientCli

java - 线程 "main"java.awt.AWTError : BoxLayout can't be shared 中的异常

我在这段代码上遇到了这个错误:super("TraceMasker");setLayout(newBoxLayout(getContentPane(),BoxLayout.PAGE_AXIS));label1=newJLabel("Sourcedirectory:");label2=newJLabel("Targetdirectory:");label3=newJLabel("Defectnumber:");label4=newJLabel("Slicetokens:");label4.setToolTipText("Seperatemultipletokenswithcomma");