我正在迁移一个项目,我们需要将 ESQL/C 源文件从 HP-UX 迁移到 Red Hat Linux。
将这些 ESQL/C 文件移动到 Linux 时可能存在哪些不兼容性?
我正在迁移一个项目,我们需要将 ESQL/C 源文件从 HP-UX 迁移到 Red Hat Linux。
将这些 ESQL/C 文件移动到 Linux 时可能存在哪些不兼容性?
答案分为两部分:
在大多数情况下,除非您已经竭尽全力编写特定于系统的 SQL 代码,否则我希望将 ESQL/C 源代码直接从 HP-UX 传输到 Red Hat Linux,而无需重新编译。虽然您可能可以编写在系统之间不可移植的代码,但我不确定只要您考虑了 32 位和 64 位代码(如果这实际上是必要的),您将如何实现这一点. 我有多个在 Linux 和 HP-UX(或 AIX 或 Solaris 或 Mac OS X)之间移植的主要程序,而对嵌入式 SQL 代码没有任何更改。
这里的移植问题与 ESQL/C 代码无关。例如,共享库处理或特定于 HP-UX 而在 Linux 中不可用的函数调用之间存在差异(或者,更糟糕的是,相同的函数在两者上都可用,但行为不同)。这些问题应该归咎于正确的原因——这是围绕 ESQL/C 的 C 代码,而不是 ESQL/C 本身。