小编Omi*_*d N的帖子

设置临时环境($ PATH)

我可能会遇到这个问题的XY问题,如果我错了,我鼓励你们纠正我.

我想配置一个工具链环境,可以在不同的平台和不同的编译器版本上工作.我最初写了一个很长的Perl脚本,它生成只包含变量的配置Makefile.我想成为KISS所以我没有使用automake或autoconf编写任何复杂的东西.此外,我希望重新配置过程非常快.在我的情况下,我的家./configure在不到1秒钟内做了所有事情.我很满意.

但是,我填写我可以使用更好的方法使用环境变量.而不是使用特定变量编写Makefile,我可以直接设置当前的shell环境.例如:

export cc=gcc
Run Code Online (Sandbox Code Playgroud)

不幸的是,一些变量已在$ PATH中声明.解决方案是在另一个前面添加新的$ PATH:

export PATH=/new/toolchain/path:$PATH

echo $PATH
/new/toolchain/path:/old/toolchain/path:/usr/bin:/bin...
Run Code Online (Sandbox Code Playgroud)

我填这是丑陋我想在添加新路径之前删除旧路径.

总结:

  1. 使用环境而不是自定义makefile来设置构建配置是否更好?
  2. 如何正确调整现有环境变量?

linux bash gcc

10
推荐指数
1
解决办法
2万
查看次数

如何在cmake中导入zeromq库?

我刚开始学习如何使用zeromq库并在不同的C++项目中使用它们.我编写的示例代码(实际上是从教程中复制的)是这样的:

//  file: main.cpp
//  Hello World client in C++
//  Connects REQ socket to tcp://localhost:5555
//  Sends "Hello" to server, expects "World" back
//
#include <zmq.hpp>
#include <string>
#include <iostream>

int main ()
{
    //  Prepare our context and socket
    zmq::context_t context (1);
    zmq::socket_t socket (context, ZMQ_REQ);

    std::cout << "Connecting to hello world server…" << std::endl;
    socket.connect ("tcp://localhost:5555");

    //  Do 10 requests, waiting each time for a response
    for (int request_nbr = 0; request_nbr != 10; request_nbr++) …
Run Code Online (Sandbox Code Playgroud)

cmake zeromq

9
推荐指数
2
解决办法
9015
查看次数

标签 统计

bash ×1

cmake ×1

gcc ×1

linux ×1

zeromq ×1