我们有一个关于Java应用程序的问题,它在一台使用Via C3处理器的老旧Advantech POS主板下运行FC3。该Java应用程序有几个通过JNI访问的编译共享库。
Via C3处理器应该是i686兼容的。不久前,在一块具有相同处理器的MiniItx主板上安装Ubuntu 6.10后,我发现之前的说法并非完全正确。由于C3处理器中缺少i686集的某些特定和可选指令,Ubuntu内核在启动时挂起。GCC编译器在使用i686优化时会默认使用i686集合中缺失的这些指令。在这种情况下,解决方案是选择i386编译版本的Ubuntu分发版。
Java应用程序的基本问题是,FC3分发版是通过从另一台PC(这次是Intel P4)的硬盘镜像进行克隆安装的,因此需要进行一些黑客操作才能使其运行,例如将某些软件包(例如内核软件包)替换为i386编译版本。
问题在于,系统在工作一段时间后完全挂起,没有任何迹象。我担心某些i686代码仍然留存在系统中,并可能随时随地随机执行(例如在恢复暂停模式后或类似情况下)。
我的问题是:
Via C3处理器应该是i686兼容的。不久前,在一块具有相同处理器的MiniItx主板上安装Ubuntu 6.10后,我发现之前的说法并非完全正确。由于C3处理器中缺少i686集的某些特定和可选指令,Ubuntu内核在启动时挂起。GCC编译器在使用i686优化时会默认使用i686集合中缺失的这些指令。在这种情况下,解决方案是选择i386编译版本的Ubuntu分发版。
Java应用程序的基本问题是,FC3分发版是通过从另一台PC(这次是Intel P4)的硬盘镜像进行克隆安装的,因此需要进行一些黑客操作才能使其运行,例如将某些软件包(例如内核软件包)替换为i386编译版本。
问题在于,系统在工作一段时间后完全挂起,没有任何迹象。我担心某些i686代码仍然留存在系统中,并可能随时随地随机执行(例如在恢复暂停模式后或类似情况下)。
我的问题是:
- 是否有工具或方法可以查找二进制文件(可执行文件或库)所需的特定架构扩展?
file
提供的信息不足。
objdump: Unknown command line argument '-f'. Try: 'objdump -help'
。 - Ky -