直接使用Eclipse CDT构建共享库

时间:2011-04-08 17:40:20

标签: c++ makefile eclipse-cdt

我想将我的C ++项目的构建完全转移到Eclipse CDT,但是我遇到了一些配置问题。这是我的旧g ++编译器调用:

g++ -I/home/lib/tinyxml
    -I/usr/lib/jvm/java-6-openjdk/include
    -L/usr/local/lib -L/home/konrad/tinyxml
    -lboost_system
    -lboost_thread
    -lboost_regex 
    -fPIC
    -shared
    -o libagent.so
    agent.cpp AgentSocket.cpp ThreadInfo.cpp  
    /home/lib/tinyxml/tinyxml.cpp
    /home/lib/tinyxml/tinyxmlerror.cpp 
    /home/lib/tinyxml/tinyxmlparser.cpp
    /home/lib/tinyxml/tinystr.cpp 

创建项目时,我选择了共享库> Emtpy项目

以下是我的问题:

  1. Eclipse CDT以某种方式生成makefile,它首先编译每个.cpp文件,然后将其重新编译到共享库。这让我面临一个或多个问题。我想跳过这一步并按照我在控制台中的方式运行它。

  2. 我无法将-L和-l选项配置到C ++构建配置中,因为Eclipse CDT仅为C ++链接部分提供这些选项,但不为C ++编译器部分提供这些选项,但我已经在那里需要它们,因为该项目没有错误编译。

1 个答案:

答案 0 :(得分:1)

  1. 这不是问题,但实际上是如何构建makefile。这样,如果更改一个源文件,则不必重新编译所有其他源文件,而只需重新编译已更改的源文件。它最大限度地减少了重新编译时间。
  2. 这应该不是问题,因为它们是仅在链接期间使用的选项。将源文件编译到目标文件中不应该依赖于外部库。