Hi all

I was involved in porting a windows application to the Linux(x86). That I did with the help of WINE and Winelib. Now There is requirement to port the same application to IBM AIX. Now I am not provided any IBM mainframe. What I need to know is that whether there exists any cross compiler which may build application for AIX while being hosted on my Linux machine. Kindly share your knowledge and experience. Moreover if there is such cross compiler then is this possible that I may test temporarily the application on some simulator for AIX. I mean is there any simulator or some thing related which may help me to observe AIX environment while I am using Linux box.

Kind regards,

Dani AI

Generated

Short answer for : there is no simple, well-supported Linux-hosted cross-compiler that will reliably produce production-ready AIX binaries for arbitrary Visual C++ code. AIX uses a different object format, ABI and runtime environment, and community experience shows small “hello world” cross-builds are sometimes possible but complex apps (shared libraries, dynamic loader behavior, toolchain quirks) usually fail. The pragmatic routes are (a) get access to an AIX environment to build/test natively (on-prem or cloud), or (b) invest the time to assemble an AIX sysroot and a carefully patched cross-toolchain and expect a lot of low-level debugging. (stackoverflow.com)

Why this is hard: AIX uses XCOFF (Extended COFF) and an AIX-specific binder/loader and historically uses big-endian conventions, so object formats, linking, and runtime startup differ from Linux/ELF. GNU/LLVM toolchains have had only partial XCOFF/AIX support (shared object/linker problems and assembler/backend gaps are common), so a plain GCC/clang on Linux won’t usually “just work” without AIX headers/libs and careful binutils/driver changes. (ibm.com)

Practical options and steps (concise):

  • Rent an AIX VM on IBM Power Virtual Server for compile+test (fastest practical path). See IBM PowerVS documentation and catalog. (ibm.com)
  • If you must attempt cross-compiling: create a proper AIX sysroot (copy headers, crt, libc, libpthread, etc. from a real AIX), build binutils/ld with --target=powerpc-ibm-aix, then build GCC/clang against that sysroot — test with the smallest possible program and iterate. Expect linker/binder, symbol and TLS issues. ()
  • For experimentation only: community projects can boot AIX under QEMU, but this is fragile, slow and not officially supported (and has licensing caveats). Use it only for very limited testing. (github.com)

Notes specific to your history with Winelib/Windows builds: Winelib helped for Linux but does not produce AIX-native binaries. A true AIX port requires native recompilation and replacing Windows/Visual C++ specific APIs with POSIX/AIX equivalents or a portability layer. As pointed toward IBM resources, start with an AIX VM or sysroot, do a tiny native build to validate your toolchain, then move on to more complex pieces. For reference on cross-tooling for Linux-on-Power (not AIX) see IBM’s Advance Toolchain — it’s useful background but not a substitute for AIX tooling. (ibm.com)

Recommended Answers

All 3 Replies

I forgot to inform that the application built in Windows was coded in Visual C++

am I posting thread in irrelevant forum? if yes then guide plzzzzz

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.