我可能会遇到这个问题的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)
我填这是丑陋我想在添加新路径之前删除旧路径.
总结:
我刚开始学习如何使用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)