http://bbs.csdn.net/topics/390239632

kerosun
kerosun
等级:
结帖率:96.92%
楼主 发表于: 2012-10-11 12:00:51
 

比如有一个tools工程,提供给其他工程通用的工具函数。
我现在的做法就只能是ctrl+c|ctrl+v
一旦工具函数发生变化,还需要在用到这些函数的工程中更新,比较麻烦。
看到eclipse工程属性设置中有Project References,但是一直不会用。
那位好心人能说说怎样实现我的需求。

回复次数:3

kerosun

kerosun
等级:

#1
得分:0

回复于:
2012-10-11 18:28:24

仔细弄了一下过程如下:
1.右键需要引入tools工程的工程→Project References→勾选tools工程。
2.C/C++ General→Paths and Symbols→Include→加入需要引入文件的路径。
3.在工程中使用tools的源文件中加入include语句#include <tools.h>
4.编译工程时提示undefined reference to `stringLower(std::string const&)'
(stringLower是tools中定义的一个函数)
5.试着加入#include <tools.cpp>,编译通过。
6.删除#include <tools.h>,仍然编译通过。
总感觉是eclipse cdt的bug,按道理#include <tools.h>以后就应该可以了,还要加#include <tools.cpp>这么奇怪的语句。

kerosun

kerosun
等级:

#2
得分:0

回复于:
2012-10-12 11:18:35

我对eclipse的使用还不熟悉,昨天又捣鼓了一下,暂时就先这样吧。
操作过程如下:
1.打开tools工程。
2.右键需要引入tools工程的工程→Project References→勾选tools工程。
3.C/C++ General→Paths and Symbols→Include→加入需要引入文件的路径。
4.在工程中使用tools的源文件中加入include语句#include <tools.h>
5.ctrl+鼠标左键单击tools工程中的tools.h和tools.cpp,然后按住ctrl把其拖放至调用tools的工程中。
  此时系统会显示文件操作对话框,选择Link to file在工厂中放一个文件的连接。
6.编写使用tools的代码,此时可以正常编译成功。

如果需要对tools中的函数进行修改,那么不管操作本工程中的文件连接,还是操作tools工程中的源文件,都是同样的效果,这样就不会导致文件不同步的问题。

defonds
Defonds
等级:
3

#3
得分:40

回复于:
2012-10-14 13:18:26

linux + eclipse + cdt 报错undefined reference......好麻烦的,这位大牛给出的方法可行,特此MARK!!!!的更多相关文章

  1. windows下codeblocks报错undefined reference to `WSAStartup@8'|

    Windows下C++Socket编程,调用WSAStartup函数报错:undefined reference to `WSAStartup@8'| 本人使用的是Codeblocks MinGW M ...

  2. 执行安装redis报错undefined reference to `__sync_add_and_fetch_4'

    执行make命令时报错:   zmalloc.o: In function `zmalloc_used_memory': /var/lib/tcommsvr/redis-2.8.0-rc4/src/z ...

  3. centos7 安装PHP5.3 报错undefined reference to symbol '__gxx_personality_v0@@CXXABI_1.3'

    系统:centos 7 原有PHP版本:5.6.27,5.4.45 试着安装nginx+多php版本,首先安装了5.6和5.4的版本,一帆风顺,但是在安装5.3.29版本时,出现问题了,configu ...

  4. cocos2d-x android 添加新场景报错: undefined reference to `vtable for XXX'

    转载自 居家懒人 http://www.cnblogs.com/JD85/archive/2012/09/17/2688128.html 加入写了新场景SecondScene,结果在cpp文件里类名地 ...

  5. boost.numpy编译报错:undefined reference to `PyInt_FromLong' libboost_numpy.so: undefined reference to `PyCObject_AsVoidPtr'

    [ 31%] Built target boost_numpy[ 36%] Building CXX object libs/numpy/example/CMakeFiles/dtype.dir/dt ...

  6. Linux-Linux下安装redis报错"undefined reference to__sync_add_and_fetch_4"解决办法

    如果出现这种错误可以在make的时候加上CFLAGS="-march=i686" 即 make CFLAGS="-march=i686" ----------- ...

  7. c++ 静态变量报错 undefined reference to static members

    c++中静态变量不但要在头文件中declare,还要在实现的cpp中declare.当然也可以赋个初始值. class foo { int _i; public: foo(int i) : _i(i) ...

  8. Linux嵌入式学习-Mplayer交叉编译-undefined reference to `clock_gettime' MPlayer

    編譯Mplayera. 配置.configure# ./configure --host-cc=gcc --cc=arm-linux-gcc --target=arm --enable-static ...

  9. The command ("dfs.browser.action.delete") is undefined 解决Hadoop Eclipse插件报错

    Hadoop Eclipse插件 报错. 使用 hadoop-eclipse-kepler-plugin-2.2.0.jar 如下所示 Error Log 强迫症看了 受不了 The command ...

随机推荐

  1. 深入浅出Oracle数据读取一致性和事务表

    保证Oracle数据库读取一致性的关键是SCN.每一个数据块头都会记录一个事务提交的SCN.同时每一数据块头都包含一个事务表(ITL),事务必须获得一个ITL事务表才能进行数据修改.该事务表用来确定当 ...

  2. C#中ComboBox动态绑定赋值

    http://www.crifan.com/csharp_combobox_data_dynamic_binding/ C#中,已有一个List,想要动态的,绑定到ComboBox中. [解决过程] ...

  3. AngularJS语法

    1,$scope(作用域) 是应用在 HTML (视图) 和 JavaScript (控制器)之间的纽带. $scope是一个对象,有可用的方法和属性. $scope可应用在视图和控制器上.2,所有的 ...

  4. [好好学习]在VMware中安装Oracle Enterprise Linux (v5.7) - (5/5)

  5. python常用模块学习3

    # # dic='{"name":"tang"}' # # f=open("hello",'w') # # f.write(dic) # # ...

  6. Java垃圾回收【GC】机制详解

    一.为什么需要垃圾回收 如果不进行垃圾回收,内存迟早都会被消耗空,因为我们在不断的分配内存空间而不进行回收.除非内存无限大,我们可以任性的分配而不回收,但是事实并非如此.所以,垃圾回收是必须的. 二. ...

  7. pandas数据查询(数值、列表、区间、条件、函数)

    import pandas as pd # 0 读取数据 df = pd.read_csv("文件路径")#例子是北京一年的天气情况 df.head()#查看表头 # 设定索引为日 ...

  8. 一、ARM

    1.1 ARM 分类 1.1.1 版本号分类 以前分类的是 ARM7,ARM9... ARM11,在 ARM11 之后,就是以 Cortex 系列分类了: Cortex-R:应用在实时系统上的系列 C ...

  9. centos 6.5 安装 subversion

    安装subversion需要依赖apr.apr-util.sqlite,下载安装包,放在/usr/file目录 subversion-1.9.4.tar.gz apr-1.5.2.tar.gz apr ...

  10. php-redis 使用命令

    PHP 使用redis 一些命令参考:https://www.jianshu.com/p/68b7114a1d70