c++中的交叉编译(作为跨平台应用程序的一部分或作为服务)
Cross Compiling in c++ (as part of an cross platform application or as service)
我正在尝试将小代码段的编译集成到我的应用程序中。如何将多个平台的一段代码编译到共享库中(如果可能的话,可以通过代码调用(,同时尽可能减少开销?最大的问题是为所有编译工具链提供一个应用程序。
我调查过柯南和克兰。当我正确理解Clang不是一个可以随应用程序一起提供的东西。至于柯南,我还不知道。
或者,我可以构建一个服务,所有需要的编译工具链都将驻留在其中,我们的系统将通过网络调用该服务,并接收一个库作为答案。
后者似乎是最合理的解决方案,但我不确定是否应该这样做。
如果可能的话,在服务器端linux上为linux、windows和OS X编译c++代码的最佳工具是什么?
不能有一个库在多个操作系统系列上运行,因为格式不兼容。请参阅:https://en.wikipedia.org/wiki/Comparison_of_executable_file_formats目标操作系统上使用的格式
您只能使用支持交叉编译的构建工具,并将其设置为构建/链接正确的库,为目标操作系统生成正确的二进制文件,如CMake/Bazel
相关文章:
- C++:如何使函数只返回作为列表一部分的字符串
- std::sort()函数无法对向量的一部分进行排序
- Active Directory:从网络服务帐户下运行的Windows服务调用ADsOpenObject时失败
- 检测win32服务创建和删除的最佳方法
- 使用 mod_gsoap 部署服务时,如何在 Gsoap 中更改 soap 上下文的模式?
- 当服务中的事件被触发时,如何将响应从服务发送回客户端?
- gRPC 生成的代码缺少服务实现
- C# DLL 从C++应用程序调用 SOAP Web 服务
- 将类型声明为类型模板参数的模板参数的一部分是否合法?
- 在 Winrt/C++ 中使用应用服务
- 将第二个 GATT 服务添加到 Movesense 容器
- 从运行服务的应用程序代码中提取窗口句柄
- 反转整数的一部分(一半)的函数
- 选择基于另一个垫子的非零像素的cv::Mat的一部分?
- C 指针和对象作为不同类的一部分
- 对于使用高级服务的分钟数和应付金额,我不断得到相同的数字
- 如何分析代码的哪一部分创建了线程?
- 通过 Tor 服务C++ socket.io 客户端
- 创建服务失败0x6f7存根收到错误数据
- c++中的交叉编译(作为跨平台应用程序的一部分或作为服务)