尝试构建共享库 g++ / mac 时未定义符号 _main

2023-12-03

我正在尝试在 Mac 上构建 libdecodeqr。我的 C++ 构建和链接历史都在 Windows 上,因此这是一次令人兴奋的发现之旅。

我终于到了要创建链接库的地步。我正在运行的命令是:

g++ -shared -o libdecodeqr.so.0.9.3 bitstream.o codedata.o container.o ecidecoder.o formatinfo.o galois.o imagereader.o libdecodeqr.o -L/opt/local/lib -arch i386 -lcxcore -lcv

结果是:

Undefined symbols:
    "_main", referenced from:
       start in crt1.10.5.o

我的印象是,使用 -shared 标志创建库意味着我不需要 main 函数。源代码中肯定没有。

只是为了好玩,我将 int main() {return 0;} 添加到其中一个 cpp 文件并重建。整个过程都已编译和链接,但是当我尝试将输出用作库时,我收到错误消息,告诉我无法链接到主可执行文件。我想这是有道理的。

我还需要传递给 g++ 来告诉它构建库吗?


-sharedOSX 上不支持。使用任一-dynamiclib or -bundle(取决于您要创建哪种类型的共享库)。

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

尝试构建共享库 g++ / mac 时未定义符号 _main 的相关文章

随机推荐

  • 如何关闭 iframe?

    打开 iframe 后 有时需要关闭它 到目前为止 我只是将 iframe 从其父节点中删除 从而将其与 DOM 断开 但是 我发现这并不会立即结束 iframe 的生命 并且它的 javascript 代码仍然可以回调到父窗口 而父窗口不
  • Spring 反应式的 Spring Security 会话超时

    我有一个集成了 Spring Security 的反应式应用程序 它是由 springinitializr 创建的 主要包含 3 个包 spring boot spring security 和 webflux 我试图通过以下配置来配置会话
  • gPRC(protobuf)可以返回空消息吗?

    我们的客户端调用 gRPC 服务器 理想情况下它应该返回 MyMessage 响应对象 但是这个MyMessage对象可以为null吗 或者gRPC不能返回null对象 因为如果它是null grpc会抛出异常 回答你的问题 检查这些谷歌文
  • 内联函数有什么好处?

    在 C 中使用内联函数的优点 缺点是什么 我发现它只会提高编译器输出的代码的性能 但是有了当今优化的编译器 快速的 CPU 巨大的内存等 不像 1980 年 优点 通过在需要的地方内联代码 您的程序将在函数调用和返回部分花费更少的时间 它应
  • Swift 数组中最大值及其索引的高效算法

    我编写了一个 Swift 算法 用于查找 Swift 数组中的最大值及其索引 这是受到 Matlab 和 Octave 中 max m 函数的启发 这里的专家能否提出一种提高该算法速度的方法 我的意思是它是否可以做得更快 或者您认为这对于大
  • 设置网页宽度

    我是网页设计新手 我想设置页面宽度 使其在 800x600 分辨率的屏幕上显示良好 我通常使用表格 但我在某处读到过度使用表格会降低网站的性能 我还可以使用什么其他东西以及如何设置宽度 使用 DIV 而不是表看起来像这样 div style
  • 自动布局、屏幕旋转和 UIView 动画

    我遇到了一个 UIView 问题 我将其添加到屏幕底部 并在按下按钮时将其动画化以填充大部分屏幕 视图将按预期上下动画并旋转 如果我尝试在横向时制作动画 它会中断并给出错误消息 Assertion failure in UIScrollVi
  • 单击联系人按钮时,在自定义表格视图控制器中显示 iOS 设备中的所有联系人,而不是设备的默认视图

    在我的应用程序中 当我单击联系人按钮时 我需要在自定义表视图控制器中显示设备中的所有联系人 我发现很多使用地址簿框架的演示 但其中的联系人使用 ABPeoplePickerNavigationController 以默认设备格式显示 但我需
  • Fluent Security - 配置参数化控制器操作

    我做了很多研究并测试了 FluentSecurity 库的 1 4 和 2 0 版本 但我似乎无法使用配置模式 configuration For
  • Python 中使用字典代替动态变量名

    我有一个包含卡车配置的长文本文件 在每一行中 卡车的一些属性都以字符串形式列出 每个属性在字符串中都有自己固定宽度的空间 例如 2 chracters number of axles 2 characters weight of the f
  • Facebook。如何获取我的应用程序的所有用户列表?

    在询问之前我一直在谷歌上搜索 但不幸的是一切都是徒劳的 让我的应用程序的所有 facebook 用户都拥有的唯一可能是维护我自己的数据库 或者也许任何 Facebook API 都提供了更简单的方法 谁能帮我吗 我怎么做 Facebook
  • 在 PHP 中将 HTML 转换为 CSV?

    我有一个像这样的html表结构 tr style font weight bold td ID td td Navn td td Adresse td td By td td Post nr td td E mail td td Telef
  • 对象解构防止打字稿歧视

    我一直在使用标记的联合类型来处理打字稿歧视 并且遇到了一些奇怪的事情 如果我打开实际对象属性 一切都会按预期进行 但如果我使用解构 打字稿会报告错误 我认为这与编译时解构的实际工作方式有关 但我不确定 您可以在以下位置查看此示例代码操场 i
  • 将 urlencoded URL 作为参数传递给 CakePHP 的控制器/操作

    我对 CakePHP 相当陌生 因此 我以前用 Zend Framework 做的一些基本事情被 Cake 打败了 我正在开发一个项目 我必须将命名参数传递给控制器 操作 设置路由并传递参数相当简单 我的问题是当参数是 urlencoded
  • 无法在 databricks 上安装 pyomo 求解器 ipopt

    使用以下命令在 databricks 上成功安装 pyomo pip install pyomo optional 输出 成功安装 algopy 0 5 7 casadi 3 5 5 dill 0 3 5 1 et xmlfile 1 1
  • 安装Google Assistant时,出现错误“...googlesamples.assistant'是一个包,无法直接执行...”

    好吧 在我的 Windows 10 PC 上安装 Google Assistant 时遇到了多个错误 我通过访问此处解决了最后一个错误 Python3 6 OSX 上的 Google 助理安装 现在 我已经安装了所有东西 想要测试我的麦克风
  • 有什么方法可以消除加速度计数据中沿重力轴的小偏差

    类似于这个问题 CMDeviceMotion 用户加速度漂移 我在 iOS5 SDK 中使用 CMDeviceMotion userAcceleration 来绘制其 x y z 分量随时间的变化 就像上面的帖子一样 当我的 iPhone
  • Matlab中补集子集[重复]

    这个问题在这里已经有答案了 在 R 中 我可以执行以下操作 v lt 11 20 v 4 5 并得到11 12 13 16 17 18 19 20 因此所有指数except第四和第五 Matlab 的索引逻辑中有等效的吗 然而我全神贯注 我
  • 您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,了解在“?”附近使用的正确语法在第 1 行 [重复]

    这个问题在这里已经有答案了 我正在使用库存系统Java and JDBC 我在查询表时遇到了这个错误 com mysql jdbc exceptions jdbc4 MySQLSyntaxErrorException 您的 SQL 语法有错
  • 尝试构建共享库 g++ / mac 时未定义符号 _main

    我正在尝试在 Mac 上构建 libdecodeqr 我的 C 构建和链接历史都在 Windows 上 因此这是一次令人兴奋的发现之旅 我终于到了要创建链接库的地步 我正在运行的命令是 g shared o libdecodeqr so 0