'tsc command not found' in compiling typescript
TypescriptNpmTscTypescript Problem Overview
I want to install typescript, so I used the following command:
npm install -g typescript
and test tsc --version
, but it just show 'tsc command not found'. I have tried many ways as suggested in stackoverflow, github and other sites. but it doesn't work. How could I know typescript is installed and where it is.
my OS is Unix, OS X El Capitan 10.11.6, node version is 4.4.3, npm version is 3.10.5
Typescript Solutions
Solution 1 - Typescript
A few tips in order
- restart the terminal
- restart the machine
- reinstall nodejs + then run
npm install typescript -g
If it still doesn't work run npm config get prefix
to see where npm install -g is putting files (append bin
to the output) and make sure that they are in the path (the node js setup does this. Maybe you forgot to tick that option).
Solution 2 - Typescript
You are all messing with the global installations and -path files. Just a little error might damage every project you have ever written, and you will spend the rest of the night trying to get a console.log('hi')
to work again.
If you have run npm i typescript --save-dev
in your project - just try to run:
npx tsc
And see if it works before messing with global stuff (unless of course you really know what you are doing)
Solution 3 - Typescript
I had to do this:
npx tsc app.ts
Solution 4 - Typescript
After finding all solutions for this small issue for macOS only.
Finally, I got my TSC works on my MacBook pro.
This might be the best solution I found out.
For all macOS users, instead of installing TypeScript using NPM, you can install TypeScript using homebrew.
brew install typescript
Solution 5 - Typescript
Globally installing TypeScript package worked for me.
npm install typescript -g
Solution 6 - Typescript
If your TSC command is not found in MacOS after proper installation of TypeScript (using the following command: $ sudo npm install -g typescript
, then ensure Node /bin
path is added to the PATH
variable in .bash_profile
.
Open .bash_profile
using terminal: $ open ~/.bash_profile;
Edit/Verify bash profile to include the following line (using your favorite text editor):
export PATH="$PATH:"/usr/local/lib/node_modules/node/bin"";
Load the latest bash profile using terminal: source ~/.bash_profile
;
Lastly, try the command: $ tsc --version
.
Solution 7 - Typescript
Easy fix for Mac I found. Just run these commands:
sudo npm install -g concurrently
sudo npm install -g lite-server
sudo npm install -g typescript
Nothing worked except this for me.
Solution 8 - Typescript
I had this same problem on Ubuntu 19.10 LTS.
To solve this I ran the following command:
$ sudo apt install node-typescript
After that, I was able to use tsc
.
Solution 9 - Typescript
For mac users, you don't need to restart your laptop or doing any other commands
Use brew install typescript
Solution 10 - Typescript
This answer is specific for iTermV2 on MAC
-
First of all, I needed to instal as
sudo
(admin) during NPM installsudo npm install -g typescript
-
NPM installs the libraries under
/usr/local/Cellar/node/<your latest version>/lib/node_modules/typescript
folder and symlinks at/usr/local/Cellar/node/<your latest version>/bin/tsc
hence I went ~/.zshrc ( .bashrc, if you use bash)and added /usr/local/Cellar/node/<your latest version>/bin
to the $PATH.
- reload the shell profile via
source ~/.zshrc
(.bashrc in your case)
Solution 11 - Typescript
The only solution that work for me was put npx tsc -v or for the compiling npx tsc salida.ts
"salida.ts" is the name of the file
Solution 12 - Typescript
-
Check your
npm
version -
If it's not properly installed, then install it first
-
run this command
npm install typescript -g
-
now
tsc <file_name>.ts
-
It'll create a corresponding
.js
file. eg<file_name>.js
-
now try
node <file_name>.js
Solution 13 - Typescript
None of above worked for me.
I tried this as well,
yum install typescript
was able to compile by hook and crook as follows. Not recommended but just a workaround.
Just install locally using npm
, as npm install typescript
and verify in node_module folder, if its downloaded. and then run,
./node_modules/typescript/bin/tsc --help
./node_modules/typescript/bin/tsc //this line actually runs and compile and generate the compiled file.
Solution 14 - Typescript
For windows and yarn user, try yarn tsc --init
Solution 15 - Typescript
Non-admin solution
I do not have admin privileges since this machine was issued by my job.
- get path of where node modules are being installed and copy to clipboard
npm config get prefix | clip
- don't have clip? just copy output from
npm config get prefix
- add copied path to environment variables
- my preferred method (Windows)
-
(Ctrl + R), paste
rundll32 sysdm.cpl,EditEnvironmentVariables
-
under User Variables, double-click on Path > New > Paste copied path
-
Solution 16 - Typescript
None of above answer solve my problem.
The fact is that my project did not have type script installed.
But locally I had run npm install -g typescript
. So I did not notice that typescript node dependency was not in my package json.
When I pushed it to server side, and run npm install
, then npx tsc
I get a tsc not found. In facts remote server did not have typescript installed. That was hidden because of my local global typescript install.
Solution 17 - Typescript
On Windows 10 i solved it by adding %APPDATA%\npm
to the path
Solution 18 - Typescript
I have tried a lot to deploy the Node.js typescript project on Heroku and I have tried different solutions but none of them working for me. So, I have implemented a solution that is to create a build locally which is a dist folder, and just only push dist folder with package.json files, you don't need to push your src folder to Heroku. and in your script add "start": "node dist/index.js"
Here are my project structure:
.gitignore file:
package.json file:
"start": "node dist/index.js",
"deploy": "tsc && git add . && git commit -m Heroku && git push heroku master",
"dev": "ts-node-dev --respawn --pretty --transpile-only src/index.ts"
just need to add these scripts:
Solution 19 - Typescript
I was having trouble with this because I didn't want to globally install typescript. I found I had to add a script to the package.json that called tsc for me. The solution can be found here - https://stackoverflow.com/a/41446584/6301243
Solution 20 - Typescript
For windows:
Add the path by using command as below in command prompt:
path=%path%;C:\Users<username>\npm
As in my case, the above path was not registered for command.
%userprofile% in run windows, will give you path to C:\users<username>
Solution 21 - Typescript
I solved this on my machine by just running sudo npm install
in the directory that I was getting the error.
Solution 22 - Typescript
This works perfectly on Mac. Tested on macOS High Sierra
sudo npm install -g concurrently
sudo npm install -g lite-server
sudo npm install -g typescript
tsc --init
This generates the tsconfig.json file.