在 Solaris 上,使用 gcc 编译的库与使用 cc 生成的库的使用方式是否相同?

2024-05-01

我目前正在尝试编译 libxml2在 Solaris 上。当我运行源代码提供的 ./configure 脚本时,会自动使用 gcc 和 g++ 编译器。但是,我想使用 cc 和 CC 编译器。所以我跑:

./configure CC=cc CXX=CC

它有效,但是当我运行时“make”,我收到一些错误,导致无法生成库。

当使用 gcc 和 g++ 时,一切顺利,没有错误,所以我想知道:我可以使用 gcc/g++ 生成的库,就像我使用 cc/CC 连续生成它们一样吗?

在 Solaris 上使用 cc 生成的库与使用 gcc 生成的相同库有什么区别?


您可以使用gcc or cc C编译器几乎可以互换。

你可以混合g++ and CC C++ 编译器以某些方式,但仅限于 x86 Solaris 并且如果您CC编译器足够新,可以-compat=g可用选项。

The GNU g++和 Solaris 工作室CCC++ 编译器默认使用完全不同的 ABI 和 C++ 运行时库。在 x86 Solaris 平台上,较新的版本(从版本 12 开始?,如果我没记错的话)提供了-compat=g使用 g++ ABI 和运行时库的选项。这工作室12.4CC编译器添加了一个-std=v option https://docs.oracle.com/cd/E37069_01/html/E37075/bkamw.html#OSSCPgnaof选择不同版本的 g++ 或 Sun C++ ABI 和运行时库:

c++03(零-3,不是哦-3)

相当于-compat=g选项。它选择C++ 03方言和g++ ABI;它与 Solaris 和 Linux 上的 g++ 二进制兼容 设置__SUNPRO_CC_COMPAT预处理器宏为“G”。

c++11

选择 C++ 11 方言和 g++ 二进制兼容性。它设置了__SUNPRO_CC_COMPAT preprocessor宏为“G”。

c++0x(零-x,不是哦-x)

相当于c++11。

and

The -std=c++03提供与 gcc/g++ 编译器的兼容性 所有 Oracle Solaris 和 Linux 平台。

With -std=c++03,二进制兼容性仅扩展到共享 (动态或 .so)库,而不是单个 .o 文件或存档 (.a) 图书馆。使用的 gcc 头文件和库是由 编译器,而不是系统上安装的 gcc 版本。

请注意,Studio 12.4CC编译器使用g++与捆绑提供的头文件和库CC编译器本身。 12.3 及更早版本使用g++系统上安装的标头和库/usr/sfw.

在 SPARC Solaris 上,您必须使用g++ or CC对于整个应用程序。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Solaris 上,使用 gcc 编译的库与使用 cc 生成的库的使用方式是否相同? 的相关文章

  • 如何从java程序中编译.java文件[重复]

    这个问题在这里已经有答案了 可能的重复 从 Java 内部编译外部 java 文件 https stackoverflow com questions 10889186 compiling external java files from
  • 有没有办法将 fopen_s() 与 GCC 一起使用,或者至少创建一个 #define ?

    MSVC 编译器说fopen 已弃用 建议使用fopen s 有什么办法可以使用吗fopen s 并且仍然便携 任何想法 define 微软的 s函数是不可移植的 我通常使用等效的 C89 C99 函数并禁用弃用警告 define CRT
  • 使用 AVX 内在函数代替 SSE 并不能提高速度 - 为什么?

    我已经使用 Intel 的 SSE 内在函数相当长一段时间了 并取得了良好的性能提升 因此 我希望 AVX 内在函数能够进一步加速我的程序 不幸的是 直到现在情况并非如此 可能我犯了一个愚蠢的错误 所以如果有人能帮助我 我将非常感激 我使用
  • typeof() 表达式内的副作用

    在 GNUC C 中 您可以使用typeof expression 并且使用内部带有副作用的表达式是合法的 例如 您可以使用以下 C 代码 int x 0 typeof x y 在这种情况下 副作用被忽略 并且 x 之后仍然为零 这是有道理
  • 在 Linux 上将 libquadmath 与 C++ 链接

    我有一个示例代码 include
  • 根据相同的 XML 模式 (XSD) 加速一批 XML 文件的 XML 模式验证

    我想加快根据同一个 XML 模式 XSD 验证一批 XML 文件的过程 唯一的限制是我处于 PHP 环境中 我当前的问题是 我想要验证的模式包括 2755 行的相当复杂的 xhtml 模式 http www w3 org 2002 08 x
  • 为什么 ld 无法从 /etc/ld.so.conf 中的路径找到库?

    我想添加 opt vertica lib64进入系统库路径 所以我执行以下步骤 1 添加 opt vertica lib64 into etc ld so conf 然后运行ldconfig 2 检查 bash ldconfig p gre
  • 我可以以某种方式“编译”一个Python脚本以在没有安装Python的PC上运行吗?

    所以我有一个Python脚本 myscript py 我是这样执行的 python D myscript py 但是 我必须安装 Python 并将其包含在PATH使其工作的环境变量 是否有可能以某种方式将 Python 可执行文件与 Py
  • gcc 中 -g 选项的作用是什么

    我看到很多关于 gdb 的教程要求在编译 c 程序时使用 g 选项 我无法理解 g 选项的实际作用 它使编译器将调试信息添加到生成的二进制文件中 此信息允许调试器将代码中的指令与源代码文件和行号相关联 拥有调试符号可以使某些类型的调试 例如
  • CPU Relax 指令和 C++11 原语

    我注意到许多使用特定于操作系统的原语实现的无锁算法 例如所描述的自旋锁here http locklessinc com articles locks 使用 Linux 特定的原子原语 经常使用 cpurelax 指令 使用 GCC 可以通
  • 这个反斜杠在这段汇编代码中起什么作用?

    我不确定这些推线有什么区别 修剪下来来自 Linux 的 x86 entry calling h https github com torvalds linux blob 241e39004581475b2802cd63c111fec43b
  • 在 C++17 中使用 成员的链接错误

    我在 Ubuntu 16 04 上使用 gcc 7 2 并且需要使用 C 17 中的新文件系统库 尽管确实有一个名为experimental filesystem的库 但我无法使用它的任何成员 例如 当我尝试编译此文件时 include
  • Ubuntu 11.10 上的 c 数学链接器问题 [重复]

    这个问题在这里已经有答案了 我从 Ubuntu 升级后出现了一些奇怪的错误 10 11 11 04 i dont know 到 11 10 我正在得到一个undefined reference to sqrt 使用 math h 时并与 l
  • 使用 SSD 加快编译时间

    我想尝试加快 C 项目的编译时间 他们有大约 300 万行代码 当然 我不需要总是编译每个项目 但有时有很多源文件被其他人修改过 我需要重新编译所有这些文件 例如 当有人更新一个项目时 ASN 1 https en wikipedia or
  • 在Linux上编译C# + WPF以便在Windows上运行

    我有一个 C 应用程序 其中某些部分是使用 WPF 编写的 Mono 不支持 可以在 Linux 上编译这个应用程序吗 最终 该应用程序将在 Windows 上运行 但它是更大框架的一部分 并且我们的整个构建过程在 Linux 上运行 因此
  • 使用 Java 文件中的代码编译 Java 文件

    我目前正在创建一个个人 也许是公共 java 终端 我想创建一个在执行时创建 编译 Java 文件的命令 但我不太确定如何实际执行此操作 是否可以 或者我只是在做梦 你也可以使用Groovy http groovy codehaus org
  • C99 中数组的静态大小[重复]

    这个问题在这里已经有答案了 一个非常简单的 C 程序 include
  • 如何制作一个makefile只用于编译一些java文件?

    我有三个java文件 名为A java B java C java A将创建对象B B将创建对象C 但我以前从未构建过makefile 有谁可以帮我构建一个 makefile 来编译这三个 java 文件吗 我应该使用什么工具来制作 mak
  • 为什么是 ”\?” C/C++ 中的转义序列?

    C C 中有四种特殊的非字母字符需要转义 单引号 双引号 反斜杠 和问号 显然是因为它们有特殊的含义 对于单身char 对于字符串文字 对于转义序列 但为什么是 其中之一 我今天读了教科书上的转义序列表 我意识到我已经never逃脱了 以前
  • 如何在 GCC 5 中处理双 ABI?

    我尝试了解如何克服 GCC 5 中引入的双重 ABI 的问题 但是 我没能做到 这是一个重现错误的非常简单的示例 我使用的GCC版本是5 2 如您所见 我的主要函数 在 main cpp 文件中 非常简单 main cpp include

随机推荐

  • +[NSColor selectedMenuItemColor] 如何神奇地绘制渐变?

    我正在实现一个自定义 NSMenuItem 视图显示出一个亮点 https stackoverflow com questions 6054331 highlighting a nsmenuitem with a custom view当用
  • 如何在 postgresql 的“tablefunc”查询中包含空值?

    我正在尝试使用crosstab http www postgresql org docs 9 1 static tablefunc html函数于postgresql创建一个pivot table 但是 我很难理解如何在查询中构建 SQL
  • 如何隐藏 WebBrowser 直到网站完成加载/下载过程?

    我想知道我该如何隐藏WebBrowser直到网站加载过程完成 另外 我使用 Panel1 和WebBrowser在它的上面 为什么 好吧 这样 我可以完全像我想要的 WebBrowser 一样设置 Panel1 的大小和位置 然后将 Web
  • R 图在从 r 变量读取文本时使用 html 进行格式化

    我正在使用 R 包绘图器创建流程图 为了获得所需的格式 粗体 项目符号 左对齐 我可以在 html 中编写节点标签 但是 我还想通过调用 R 中的变量来填充一些文本 但我不知道如何同时执行这两项操作 html 格式化 调用 R 变量 在此代
  • 如何在RTK查询中配置存储多个中间件

    redux toolkit 给出了原始文档 import configureStore from reduxjs toolkit Or from reduxjs toolkit query react import setupListene
  • 谷歌地图转弯 GPS 导航用于 ios 开发

    我的应用程序需要包含逐段 GPS 导航 任何人都可以告诉如何集成谷歌地图进行逐段 GPS 导航 我可以在android开发中找到它 但我无法从谷歌地图的iOS开发文档中找到导航 https developers google com map
  • 键盘挂钩获取组合键(WPF)

    我尝试在这里使用这篇文章 在 WPF C 中使用全局键盘钩子 WH KEYBOARD LL https stackoverflow com questions 1639331 using global keyboard hook wh ke
  • Firemonkey 移动应用程序和远程 MySQL

    我正在使用 Delphi XE5 并且我已经创建了基本的 Firemonkey 移动应用程序 Delphi 我想连接到远程 MySQL 数据库 我应该使用哪一个数据库管道 FireDAC DBExpress 等 您可以使用标准 TSQLQu
  • UICollectionView 就像 iOS 主屏幕 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想制作一个像 iOS 主屏幕一样的 UICollectionView 我发现了几个 而且很好的 样本 例如 http mobile tu
  • 尝试使用 SwiftMailer 和 Sendgrid 发送电子邮件时出现致命错误

    我在尝试使用 swiftmailer 和 sendgrid smtp 发送电子邮件时收到此错误 致命错误 未捕获异常 Swift TransportException 消息 预期响应代码 250 但收到代码 消息 这是我的代码 hdr ne
  • 如何找到向量中第一个小于整数 X 的元素? (c++)

    如果我有以下向量 10 10 10 20 20 20 30 30 我想要一个函数返回 X 的整数的位置或直接返回 X 之后的较小元素 例如如果我正在搜索 11 我希望函数返回 2 因为第二个元素 10 是第一个较小的元素向量中大于 11 的
  • 从 WasapiLoopbackCapture 捕获音频,并转换为 muLaw

    我正在使用 WasapiLoopbackCapture 捕获音频 format IeeeFloat SampleRate 48000 BitsPerSample 32 我需要将其转换为 muLaw 8Khz 8 位 单声道 最终它将通过 S
  • 世博会错误 - 无法加载所有资源

    由于某种原因 当第一次使用命令启动我的应用程序时expo r ci no dev我收到Failed to load all assets error 收到错误的图像 https i stack imgur com pcvv4 png 如果我
  • 为什么 x = x +1 在 Elixir 中有效?

    我读到的有关 Elixir 的所有内容都表明 赋值应该被视为模式匹配 如果是这样 为什么 x x 1 在 Elixir 中有效 不存在 x x 1 的 x 值 我读到的有关 Elixir 的所有内容都表明 赋值应该被视为模式匹配 在长生不老
  • 使用 JAX-WS 的 SOAP 消息中的嵌套标记中没有命名空间

    我正在尝试使用 JAX WS 和 wsimport 编写一个使用给定 Web 服务的 Java 应用程序 它发送到服务的 SOAP 消息大部分是正确的 然而 传递给服务函数的参数之一是字符串数组 尽管在 SOAP XML 中为数组本身指定了
  • 椭圆绘制WPF动画

    我正在开发一个矩形区域的控件 当触发发生时 将在矩形区域中绘制一个椭圆形 该控件将能够承载其他控件 例如文本框 按钮等 因此在触发时将在它们周围绘制圆圈 我希望将圆圈绘制为动画 就像您用笔圈出内部控件一样 实现这一目标的最佳方法是什么 我一
  • Angular 2 中不同模块组件的通信

    我有一个组件 我希望它将数据传递给另一个模块中的另一个组件 其实我的app component是这些子模块的父模块 我希望每个子模块发送一些数据到app component 但他们只是在路由意义上才是孩子和父母 所以我猜他们实际上并不是父母
  • Crystal Reports - 根据数据隐藏文本和绘图对象

    我在 Crystal Report 上有一个文本和绘图 如果数据字段 IsVisible 设置为 1 我想隐藏它 有没有一种简单的方法可以做到这一点 您可以有条件地抑制字段 文本 图片所在的整个部分 方法是转到 部分专家 gt 选择所需的部
  • 如何将网格转换为VTK格式?

    我有一个自己格式的网格 我想将其导出到 vtk 文件 我该怎么做呢 原始网格的格式如下 伪代码 class Mesh List
  • 在 Solaris 上,使用 gcc 编译的库与使用 cc 生成的库的使用方式是否相同?

    我目前正在尝试编译 libxml2在 Solaris 上 当我运行源代码提供的 configure 脚本时 会自动使用 gcc 和 g 编译器 但是 我想使用 cc 和 CC 编译器 所以我跑 configure CC cc CXX CC