c++,链接时出错.建筑与scons
C++, error while linking. Building with scons
我试着用scons运行构建示例Wt项目,但几个小时我卡住了。当我用命令
编译它时:g++ -o hello hello.cc -I/usr/local/include -L/usr/local/lib
-lwthttp -lwt -lboost_random -lboost_regex
-lboost_signals -lboost_system -lboost_thread -lboost_filesystem
-lboost_program_options -lboost_date_time
(链接到教程:http://www.webtoolkit.eu/wt/doc/tutorial/wt.html#_hangman)一切正常,我可以运行这个简单的例子了。但是对于我的scons文件:
env = Environment()
# Add header search path
env.Append(CPPPATH = ['/usr/include', '/usr/local/include'])
# Add compile-time flags
env.Append(CCFLAGS=[
#'-Wall','-g',
'-lwt', '-lwthttp',
'-lboost_random', '-lboost_regex', '-lboost_signals',
'-lboost_system', '-lboost_thread', '-lboost_filesystem',
'-lboost_program_options', '-lboost_date_time'
])
# Add library search path
env.Append(LIBPATH = ['/usr/lib','/usr/local/lib', '/opt/lib'])
env.Program('hello',['exa.cc'])
#Program('exa.cc')
~
我不能,得到以下错误:http://pastebin.com/Ft2b62ie。谢谢你的回答。
卢卡斯。
下面的SConstruct应该可以为你工作:唯一的区别是将库放在LIBS SCons构造变量中,并从每个库中删除'-l',因为在SCons中不需要。
(注意,这个答案与user2093113基本相同,但是正确指定了库:https://stackoverflow.com/a/16555400/1158895)
env = Environment()
# Add header search path
env.Append(CPPPATH = ['/usr/include', '/usr/local/include'])
# Add compile-time flags
#env.Append(CCFLAGS=['-Wall','-g'])
# libraries to link against
# Notice you dont need the '-l', since SCons is platform independent
env.Append(LIBS=[
'wt', 'wthttp',
'boost_random', 'boost_regex', 'boost_signals',
'boost_system', 'boost_thread', 'boost_filesystem',
'boost_program_options', 'boost_date_time'
])
# Add library search path
env.Append(LIBPATH = ['/usr/lib','/usr/local/lib', '/opt/lib'])
# Compile and link the binary
env.Program('hello',['exa.cc'])
你的链接标志不应该附加到CCFLAGS
,而应该附加到LIBS
。
env.Append(LIBS=[
'-lwt', '-lwthttp',
'-lboost_random', '-lboost_regex', '-lboost_signals',
'-lboost_system', '-lboost_thread', '-lboost_filesystem',
'-lboost_program_options', '-lboost_date_time'
])
相关文章:
- 建筑 qtconnectivity bluez 缺失
- 建筑x86_64的未定义符号:"vtkDebugLeaksManager::vtkDebugLeaksManager()",引用自:
- Qt Creator项目打破:"找不到建筑x86_64符号"
- C++ 建筑x86_64的未定义符号(类似)
- 使用 SCons 提取每个编译单元的编译时间
- 建筑x86_64的未定义符号 (curlpp)
- C 基本建筑设计
- 指针和建筑的大小
- 使用 scons 在 windows 下编译C++代码,scons 添加"/Fo"作为编译选项
- 海湾合作委员会向 SCONS 标志
- VS 远程建筑:"Makefile.Targets error: Cannot copy file remotely to directory"
- 在scons中将访问说明符从private更改为public
- 如何使用SCONS构建CPP文件:每个文件都具有可执行文件
- 建筑x86_64的未定义符号 ->建筑x86_64找不到的符号
- 建筑x86_64的未定义符号 - 如何查找丢失的文件
- 在 SCONS 框架中链接 C 和 C++ 代码时遇到困难
- Scons 没有指定 CPPPATH,仍然可以检测到 .h 依赖性吗?
- scons建筑环境的继承
- 具有非标准位置的升压库的SCons建筑
- c++,链接时出错.建筑与scons