First, some background information...

In terminology regarding computer programmes, the term portable typically means being operational without having to install. In more advanced speak, it's where a programme can be used without it affecting the system registry in any way.

Typically, the portable application (an EXE file), along with all the supporting files necessary for the programme to properly run¹, is stored in a single folder (downloadable as a zip file). In this respect, it's considered portable because it's self-contained, and as such can be used on any computer the folder is located on.

In comparison, most programmes that people use are actually installed on the specific computer itself, so that the system registry is changed, and the EXE—along with all the necessary supporting files—is stored in the "Program Files" director(y)(ies)² in your main hard drive (usually C:/ but can be any other drive you choose). In this way, it's not considered "portable" because it's tied to that specific computer.

Now, the question...

I want to know if there is an antonym in computing jargon for portable. In other words, I'd like to know if there's a word out there that means "non-portable" in the sense described above. (Other than non-portable. Obviously. Also, I'm aware "installed" is an appropriate candidate. I'd like to know if there is another term not so ad hoc-y.)

It can be either common or rare, but must be actually in use (i.e., not made up on the spot here at EL&U). If there is no word, that's fine; just tell me. I don't want a made-up word; I want a word that's actually used, even if only a little bit.

(Note: I said word here, not term, so it'd have to be an adjective that can be used in the format [~~~] application, in clear opposition to the format [portable] application, which is a very common phrase used to refer to portable programmes.)

¹ DLLs, PNG/JPG/BMPs, INIs, etc.

² In Windows, it's usually (if not always) either Program Files or Program Files (x86), depending on whether you install the 64-bit or 32-bit version of said programme, respectively.

  • 2
    In what sense the term you are looking for would be different from "installed"?
    – user66974
    Commented Aug 30, 2015 at 20:30
  • 6
    Note this is not a normal CS use of the word portable - portable software usually means can be run on differing Operating Systems and or hardware
    – mmmmmm
    Commented Aug 30, 2015 at 20:42
  • @Josh61: This should patently obvious from what I posted. I explicitly said what sense I meant. Commented Aug 30, 2015 at 20:51
  • 1
    Why wouldn't an "installed app" be the opposite of a "portable" one?
    – user66974
    Commented Aug 30, 2015 at 20:53
  • 1
    @SarahofGaia- Please define what you mean by ad hoc- I don't think calling a non-portable app as an installed app is in any way ad hoc.
    – Jim
    Commented Aug 30, 2015 at 22:36

6 Answers 6


I think that an installed application is the "opposite" of a portable one:

Portable application (portable app), sometimes also called standalone,:

  • is a program designed to run on a compatible computer without being installed in a way that modifies the computer's configuration information. This type of application can be stored on any storage device, including internal mass storage and external storage such as USB drives and floppy disks – storing its program files and any configuration information and data on the storage medium alone.

Installation (or setup) of a computer program (including device drivers and plugins):

  • is the act of making the program ready for execution. Because the process varies for each program and each computer, programs (including operating systems) often come with an installer, a specialized program responsible for doing whatever is needed for their installation. Installation may be part of a larger software deployment process.


  • Good answer, but see my comment above in response to Josh61. And thanks, I just edited my question to clarify. Commented Aug 30, 2015 at 21:02

Speaking as a programmer by trade, with decades of experience, the most common antonym I encounter by far to portable is simply non-portable.

I've never heard portable software used to refer to being operational without having to install. Portable software, rather, is software that runs on any platform with a minimum of extra work - either it's available as one of several compiled versions the user can download and run, or the source code is available and can be compiled on any platform, presumably with a single command or action. If it's available in multiple compiled forms (i.e., an EXE, SH, etc.), then that may still result in an installation step, but the software is still considered portable, because the same source code was (probably) used to produce both downloadable binaries. It's portable even if it modifies a Windows registry, drops a script for itself in /etc/init, et cetera.

The term that would most closely mean operational without having to install would probably be ready-to-run, but in general, I never even encounter this meaning, let alone as a one-word term, nor its antonym.

  • Regarding portable in the sense of running on multiple platforms, porting the source code may still require a fair bit of work depending on the language and any dependencies on libraries for different operating systems, that sort of thing. But it is still considered portable if the effort involved is less (preferably considerable less) than reimplementing it from scratch.
    – nnnnnn
    Commented Sep 13, 2019 at 5:20
  • P.S. Some sources (including Wikipedia) make a distinction between "software portability", which is what you're talking about, and "application portability", which is what the OP asked about.
    – nnnnnn
    Commented Sep 13, 2019 at 5:34

This question should have been asked in the computer programming forum, because it requires expertise with computer software construction and dynamics.

There are a spectrum of constraints to cause non-portability of software. However, let's presume being firmware is not within the scope of your question.

Non-relocatable software.

Read up on compiled-code relocation. When references in compiled-software are resolved and linked during installation, then you cannot bring an instance of a software compiled on one computer and expect it to run on another, as it would encounter "unresolved references" errors. Even though the resources referenced are present, but the "addresses" of entry points to those resources may not be the same from computer to computer.

That is opposed to dynamically linked software, where there exists an intermediary during loading of the software (initial process of running software) to map the resource references to the actual addresses of the entry points of those resources. But first, the software must comply to the conventions of such an intermediary in order for that intermediary to "understand" the need for reference relocation during code loading.

Platform-bound software.

We know that

  • software built specifically for JDK 7 will probably not run on JDK 4 or earlier.
  • a C program built for Windows x86 will not run on Linux x86.
  • a C program built for Linux will not run on Solaris.
  • an application built for JEE platform will not run on JSE platform, without a JEE container.

Resource-bound software

We know that

  • software built on Windows .NET will not run on another Windows system that does not have .NET appropriately installed.
  • a perl script that references Windows resources, will encounter "unresolved references" errors when run on Linux or Solaris, unless there are resource mockers or emulators to receive linkage to such resources. Regardless that Perl scripts are highly portable as a language across many platforms, provided that the Perl platform is installed.

Installation-bound software

  • Even though there might exist an intermediary, their references by the software must first be "registered" in a registry, because that is where the intermediary expects to find the mapping references.
  • Resources are not installed in the same location for every computer. Some people like to install a resource at "/program files/oracle/11", sometimes at "/oracle/11". Sometimes they have only a 32bit version in a 64bit Windows at /program files (x86)/oracle/11". Sometimes they only have an earlier but adequate version of the resource at "/oracle/10".

I think that

the answer to your question could be non-relocatable software.

However, it is too technically imprecise a term. The answer should be installation-bound software, where binding to resources occur during installation of a piece of software.

Such that even though there exists an intermediary, their references and resolution must be "registered" in a registry.

Installation-bound would also include non-relocatable constraints.

Regardless that software compiled for latter Windows version are compelled to include relocation tables to facilitate relocation, I understand that device driver software may be written in a way which is not relocatable, but linked/resolved during installation.

That is especially true with OS-bound device drivers in any *nix OS (linux, solaris, aix, macOS, unix).

Also, some software actually install and bind their customized device drivers to the OS. Some software use/abuse the device driver facility to install their features as a pseudo-device driver.

  • en.wikipedia.org/wiki/Language_binding Commented Aug 31, 2015 at 0:14
  • 1
    "This question should have been asked in the computer programming forum, because it requires expertise with computer software construction and dynamics." EL&U needs to have a damn position already on jargon, then. Because I asked about this on SU Meta and they suggested I go on EL&U, and then I read here on EL&U Meta about this topic. Commented Sep 7, 2015 at 4:52
  • I even brought this concern up to SU Meta. On one hand, you could say you need special knowledge, so it'd be another site's domain, but on another I'm asking a/ common word usage, and that's EL&U's domain. Even here, there is no consensus, as I showed when quoting that Meta thread, It's pissing me off. Commented Sep 7, 2015 at 4:53
  • What you're up against here is a circular reference problem, which is typically a problem in computer programming. :-D (Seriously, though, I sympathize.) Commented Feb 13, 2017 at 21:34
  • I've never heard the term "portable" used to mean a program that does not support relocation (PIC/PIE). You are also mixing up relocation and dynamic linking. The opposite of dynamic would be static, but the opposite of relocatable would not be. Still neither of those are related to program portability.
    – forest
    Commented Mar 1, 2018 at 3:04

Way late to the party here, but I just felt that this question needed an answer.

Desktop Application VS Portable **(Desktop) Apps**

Think chicken then the egg in this case.

Portable Apps are the same as Desktop Applications. They are not opposites but they do have small differences. Desktop apps store application files in multiple locations on a PC's file system. Some files are stored in system libraries in order to be shared by other installed applications. Configuration files are sometimes stored for a single user in one location while similar configuration files are stored for multiple users elsewhere on the file system. Tracking down files and moving them to other PCs is difficult and time consuming to do with desktop apps. Moving or transporting portable apps is super easy, just drag, drop, and transport. Portable apps are self contained or sometime called stand alone apps. All portable app files are saved in the same directory folder, ready to go. Portable apps are derived from desktop apps and the same can be said for mobile apps. These apps are the next generation of programs not opposites of desktop apps. Portable apps or “the egg,” were originally modified to be transportable.

Everyone seems to have forgotten desktop apps. Here are some links. :)

Historically, you downloaded Windows software through an EXE file from its official website or a third-party download site (called a desktop app). Desktop vs. Microsoft Store Apps

Definition of: desktop application

PortableApps.com was founded by John T. Haller, the developer behind numerous portable applications including "Portable Firefox" which started the portable software trend.

I hope this helps someone someday.

  • You said "Portable Apps are the same as Desktop Applications" and then went on to explain that they're not actually the same.
    – nnnnnn
    Commented Sep 13, 2019 at 5:31

Adjective hardwired ‎(comparative more hardwired, superlative most hardwired)

  1. (electronics) Designed to perform a specific task.
  2. (electronic communications) Of devices, closely or tightly coupled.
  3. (computing) Having a fixed placement (on a screen format for example.) Not changeable.

Verb hard code ‎(third-person singular simple present hard codes, present participle hard coding, simple past and past participle hard coded)

  1. (computing) To build absolute and unchangeable values into a program such that they can only be changed by modifying the source code and recompiling.
  2. (computing) To insert an unchangeable program into a device; to hard-wire.
  • Thanks for the answer, but regarding "hardwired", that's generally used to mean a modification of hardware. Installation of a programme is a software modification. So I'd really not like using that word as it can be misleading or confusing. Commented Aug 30, 2015 at 21:04
  • Regarding "hard code", that's a verb; I specified in my question that I wanted an adjective. Commented Aug 30, 2015 at 21:04
  • 1
    The past participle, "hard coded", serves as an adjective. If you insist on a single word, spell it hardcoded. Commented Aug 31, 2015 at 8:15

Within the very particular context you provided, I would respectfully offer the hyphenated term "platform-specific."

This meets the criteria you established here;

(Note: I said word here, not term, so it'd have to be an adjective that can be used in the format [~~~] application, in clear opposition to the format [portable] application, which is a very common phrase used to refer to portable programmes.)"

A platform-specific application is one that runs only under particular hardware or specific operating system. This is in contrast to a portable application, which can run in a variety of environments.

Now, having offered that, I know of very few applications that would realistically fall under your constraint. Even a Java application would require a Java runtime or full JVM. Web applications execute in the context of both a web server and the client browser, but the application itself isn't changing execution environments in the context you describe.

  • This doesn't meet the OP's requirements at all. Their definition of portable is about being able to store the required exe (or equivalent) and other required files in a self-contained and thus easily moveable manner, as compared to software that needs to be installed in the sense of running an installation process that copies files to specific locations, updates the registry, etc. Portable in the sense they've described could still be specific to only one platform.
    – nnnnnn
    Commented Sep 13, 2019 at 5:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.