Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/128.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Eclipse处理多个项目 我有两个C++项目。假设项目名为first和second,第一个项目是基础项目,第二个项目有第一个项目的插件,所以当我构建和安装第二个项目时,它只是增加了第一个项目的功能_C++_Eclipse_Multiple Projects - Fatal编程技术网

Eclipse处理多个项目 我有两个C++项目。假设项目名为first和second,第一个项目是基础项目,第二个项目有第一个项目的插件,所以当我构建和安装第二个项目时,它只是增加了第一个项目的功能

Eclipse处理多个项目 我有两个C++项目。假设项目名为first和second,第一个项目是基础项目,第二个项目有第一个项目的插件,所以当我构建和安装第二个项目时,它只是增加了第一个项目的功能,c++,eclipse,multiple-projects,C++,Eclipse,Multiple Projects,我创建了两个单独的Makefile项目“first”和“second”,我能够分别构建这两个项目 我的问题是,我无法将“第一个”中生成的二进制文件链接为“第二个”的基本二进制文件。我试着在stackoverflow上搜索类似的问题,但我不知道如何将“first”中生成的二进制文件链接到“second”,任何帮助都将不胜感激 如果需要重新组织我的问题,请告诉我。如果您使用的是GCC,请阅读您将注意到的与外部库链接的选项: -L 此选项告诉链接器将添加到库搜索路径。换句话说,它告诉链接器在哪里可以

我创建了两个单独的Makefile项目“first”和“second”,我能够分别构建这两个项目

我的问题是,我无法将“第一个”中生成的二进制文件链接为“第二个”的基本二进制文件。我试着在stackoverflow上搜索类似的问题,但我不知道如何将“first”中生成的二进制文件链接到“second”,任何帮助都将不胜感激


如果需要重新组织我的问题,请告诉我。

如果您使用的是GCC,请阅读您将注意到的与外部库链接的选项:

  • -L

    此选项告诉链接器将
    添加到库搜索路径。换句话说,它告诉链接器在哪里可以找到库文件

  • -l

    此选项告诉链接器链接到库。POSIX环境中的库(Linux、OSX、使用Cygwin或MinGW的Windows)的名称类似于库的
    libname.a
    ,但是使用
    -l
    选项,您不需要使用
    lib
    前缀或
    .a
    扩展名。还要注意,在选项
    -l
    中,是小写字母l(不是大写字母i或数字1)

总结:要从另一个目录链接库,请按如下方式链接:

$ gcc <other flags> <object files> -o <executable> -L<directory> -l<library>
对象文件当然可以是完整路径或相对路径。例如,如果您具有以下目录结构:

/ `-- home `-- user `-- myproject |-- project1 `-- project2

当然,所有这些都可以放在一个Makefile中。

如果您使用的是GCC,请阅读以下链接到外部库的选项:

  • -L

    此选项告诉链接器将
    添加到库搜索路径。换句话说,它告诉链接器在哪里可以找到库文件

  • -l

    此选项告诉链接器链接到库。POSIX环境中的库(Linux、OSX、使用Cygwin或MinGW的Windows)的名称类似于库的
    libname.a
    ,但是使用
    -l
    选项,您不需要使用
    lib
    前缀或
    .a
    扩展名。还要注意,在选项
    -l
    中,是小写字母l(不是大写字母i或数字1)

总结:要从另一个目录链接库,请按如下方式链接:

$ gcc <other flags> <object files> -o <executable> -L<directory> -l<library>
对象文件当然可以是完整路径或相对路径。例如,如果您具有以下目录结构:

/ `-- home `-- user `-- myproject |-- project1 `-- project2

所有这些当然都可以放在一个生成文件中。

谢谢你,约阿希姆,这确实很有帮助:)谢谢你,约阿希姆,这确实很有帮助:)