问题标签 [aix]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 使用 SWIG (AIX 5.1) 从 Perl 调用 C++ 库时崩溃
我试图在 AIX 5.1 机器上从 Perl 调用 C++ 库。我创建了一个非常简单的测试项目来尝试执行此操作。
我的 C++ 共享库 ( test.cpp
):
我的 SWIG 接口文件(test.i
):
然后我像这样构建共享对象:
此时,我有一个test.so
应该可以在 perl 中加载的共享对象(通过生成的 SWIG test.pm
)。我有一个非常简单的 perl 脚本来尝试加载共享对象并调用我正在导出的一个函数(test.pl
):
当我运行时test.pl
,我得到以下输出:
在 myfunc()
非法指令(核心转储)
如果我注释掉 中的std::cout
用法myfunc
,它可以正常工作。似乎在 C++ STL 中使用任何东西都会导致核心转储(我尝试只声明 a std::vector
and std::stringstream
,两者都会导致核心转储)。我可以创建一个使用 STL 而没有任何问题的独立 C++ 可执行文件,只有在从 perl 加载时在我的共享对象中调用时,我才会遇到麻烦。
我也尝试过使用 xlc 而不是 gcc,但我得到了相同的结果。我在想我需要传递一些时髦的链接器标志以确保所有链接都正确发生?欢迎任何想法...
编辑:如果我使用gcc
/链接xlc
而不是直接调用链接器 ( ld
),我会立即遇到分段错误。当 perl 试图简单地加载共享库时,它看起来像崩溃了。像上面那样调用ld
是最接近工作的方法,但我认为我可能缺少一些库或 C++ 库的特殊 AIX 链接器标志。
Edit2:好的,我已经开始工作了。AIX 在链接方面非常脆弱。我最终想出了以下似乎工作正常的链接命令:
我链接的库是最相关的。事实证明,提到库的顺序也非常重要(呃)。另请注意,这是针对 AIX 5.1 附带的 Perl 5.6.0 构建的。我已经尝试针对 Perl 5.8.8 构建同样简单的应用程序,但它不起作用。但是,我很确定更理智的链接方法(使用直接gcc
/xlc
而不是直接调用ld
)似乎效果更好。所以这个问题似乎是 Perl 发行版或链接器或其他东西中的错误。
希望这将帮助一些被诅咒不得不使用 AIX 的可怜的灵魂......
java - AIX:IBM Java:java.net.SocketException:连接超时:可能是由于地址无效
在尝试与我们的服务器建立 SSL 连接时,我们在 IBM AIX 上经常看到以下异常:
从错误中,您可能会认为这只是网络问题,但客户在大约 2 个月前从未遇到过此问题,并且 AFAIK,网络布局没有任何变化。
我们也经常收到这个:
我怀疑这是 AIX 问题,但我想这可能是防火墙问题?我还在 google 搜索中看到有人暗示 commons http 存在问题,但我看不出这有什么关系。
这是其他人最近在 AIX 上看到的吗?
unix - 什么是查看有多少磁盘空间以及剩余多少的 unix 命令?
我正在寻找相当于在 Windows 中右键单击驱动器并查看已用磁盘空间和剩余信息的方法。
java - Java 未正确将字符串转换为长对象
我们在 AIX 的 Websphere Application Server 上使用 Spring/Hibernate。在我的 Windows 机器上,该问题不会发生——仅在运行 AIX 时才会发生。当用户使用帐号登录时,如果他们在登录 ID 前加上“0”前缀,则应用程序会拒绝登录。在 DB2 表中,该列是数字类型,将 '090....' 转换为 '90...' 应该没有问题
还有其他人遇到过这样的问题吗?两台机器都有 Java v1.5。
更具体地说,流程是 FormView -> LoginValidator -> LoginController
在 LoginValidator 中,login 的值为 null 并带有前缀 0。没有 0,该值就是它应该是的值(但同样,这仅在 AIX 环境中——在 2 个 Windows 环境中它很好)。这是对象等于 null 的代码片段。
我还编写了这个简短的 Java 程序,用于从字符串构造一个 Long,并使用与 WebSphere 一起打包的 java 二进制文件
解决方案
linux - 如何解决 AIX tar 命令套接字错误?
在 AIX 环境中工作,我发出以下 tar 命令并在套接字上接收错误。
问题 1. 如何避免套接字错误?
问题 2. 我可以依靠 tar 文件来包含除错误文件之外的所有文件吗?
c++ - AIX:为什么抛出异常会中止多线程代码?
当运行使用 -pthread 编译的代码时抛出 C++ 异常时,我们会中止。
平台:AIX 5.3 技术级别 8 编译器:gcc 3.4.6 链接器:AIX 链接器 1.65.2.4
测试代码:
有没有人见过类似的东西?
你认为升级到 gcc 4 会有帮助吗?
切换到 IBM 的 xl 编译器怎么样?
谢谢。
c++ - 在 AIX 上使用 pthread 进行静态链接
我已经阅读和研究了这几天,并决定我需要一些外部帮助!
(而且这个网站似乎是一个不错的地方,所以我想我会在这里发布我的问题,看看情况如何)
我们的小公司已经好几年没有在 AIX 上构建我们的应用程序了,我被分配了这项任务(幸好我喜欢挑战)。
我遇到的问题很容易描述,我可以看到其他人也在经历它,尽管我似乎无法找到答案。
如果我链接应用程序“非静态”,这意味着我不在构建命令中使用“-static”,则该应用程序在开发机器上运行良好,但在我们用于测试的其他 AIX 机器上运行良好。
【两机速记;
开发:
测试:
]
如果我与“-static”链接,则应用程序在开发机器上运行时会在引发异常时“中断”:
并且(好像这还不够),该应用程序仍然无法在测试机器上运行:
我应该在这里注意我们正在使用“-pthead”进行链接,并且我已经阅读了几篇文章说在使用 pthread 时静态链接是不合适的。
我的脑袋疼。
我将非常感谢您对此的任何意见。
c++ - #include 的可用性
是否有适用于 AIX 4.3 的 xlC/VACPP 版本,在给出以下源时不会阻塞:
如果是,它仍然可以在任何地方使用吗?
testing - AIX 上的 LD_PRELOAD
有人能告诉我最近版本的 AIX 上是否有类似于 LD_PRELOAD 的东西吗?更具体地说,出于测试目的,我需要拦截从我的二进制文件到 time() 的调用,返回一个常量时间。
gcc - 在 AIX 上编译的帮助
是否有一个站点可以找到特定库中使用的符号及其版本。例如,我试图在 AIX 上使用 gcc 编译一些代码,它给我带来了很多未定义的符号错误例如,这是一个输出:
我在哪里可以找到这些符号在哪里。如果我在 Linux 上运行相同的gcc
命令,它运行良好。
我也尝试包括在内-lgcc
,但它又会为某些register_frame
...blah blah... 抛出未定义的符号,而且我厌倦了 AIX。
对此的任何帮助将不胜感激..请不要在这个问题上使用谷歌搜索。你最终将无处可去。
许多人问过这类问题,但没有答案。
谢谢