Procedure Entry Point not found?

Pages: 12
Both cmd.exe and bash are shells. You type commands (like g++ a.cpp main.cpp -o main.exe), and the shell executes them.

The g++ is not a builtin command of any shell. The shell checks through a list of directories, whether any of them contains executable file named g++. The first file that is found is then executed (aka run).

The PATH is an environment variable that has the (ordered) list of directories. When you do start cmd or bash, it loads PATH from config. You can modify the PATH that is in memory within the shell session. If you make a mistake you can always close the shell and start a new instance; runtime modifications do not change the config.

On Windows, when a program starts, the dynamic linker has to find linked DLL's. It checks first from the folder, where the program is, and then from the list that is in PATH.


If you have two (something) with same name in different folders, but both on path, the first of them is found and used. Some other program can ignore PATH (or have different PATH) and use explicitly the other version. Mixed use could cause problems (or at least confusion).
Alright, and these DLL's are used to execute my program?
I have never changed the folders of any DLL's so I don't know why Windows should have a problem finding them...

Anyway, in cmd, I typed:
1
2
3
4
5
C:\Users\name>cd C:\mingw\bin

C:\MinGW\bin>PATH=
PATH=C:\ProgramData\Anaconda3;C:\ProgramData\Anaconda3\Library\mingw-w64\bin;C:\ProgramData\Anaconda3\Library\usr\bin;C:\ProgramData\Anaconda3\Library\bin;C:\ProgramData\Anaconda3\Scripts;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\MiKTeX 2.9\miktex\bin\;C:\Program Files (x86)\LyX 2.3\Perl\bin;C:\Program Files\OpenVPN\bin;C:\Users\name\AppData\Local\Microsoft\WindowsApps;C:\MinGW\bin;C:\MinGW\msys\bin;C:\MinGW\lib;C:\MinGW\SFML\lib


According to the guy I quoted, this should have cleared PATH? Looks more like it shows me PATH and I have to clear it now.
And then going into my program folder and run it via calculate_median --help?
PATH=

According to the guy I quoted, this should have cleared PATH?


That is not what the guy you quoted" told you to do:

set PATH= in the Windows shell; export PATH= in Bash


I've added the formatting to make it clearer.
If you want to know the current value of PATH,
echo %PATH% in the Windows shell
or
echo $PATH in the Bash

It looks like your current PATH has:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
C:\ProgramData\Anaconda3
C:\ProgramData\Anaconda3\Library\mingw-w64\bin
C:\ProgramData\Anaconda3\Library\usr\bin
C:\ProgramData\Anaconda3\Library\bin
C:\ProgramData\Anaconda3\Scripts
C:\Windows\system32
C:\Windows
C:\Windows\System32\Wbem
C:\Windows\System32\WindowsPowerShell\v1.0\
C:\Windows\System32\OpenSSH\
C:\Program Files (x86)\MiKTeX 2.9\miktex\bin\
C:\Program Files (x86)\LyX 2.3\Perl\bin
C:\Program Files\OpenVPN\bin
C:\Users\name\AppData\Local\Microsoft\WindowsApps
C:\MinGW\bin
C:\MinGW\msys\bin
C:\MinGW\lib
C:\MinGW\SFML\lib

There is C:\ProgramData\Anaconda3\Library\mingw-w64\bin way before the C:\MinGW\* entries.

Are those two separate (and incompatible) versions of MinGW?
Which combination of tools does the compilation use?
Which combination does the execution of binary use?
MikeyBoy wrote:


That is not what the guy you quoted" told you to do:

set PATH= in the Windows shell; export PATH= in Bash

I don't use Bash. I have never used Bash. I thought Bash was a Linux terminal?? Do I have to install it on Windows now, or what?

keskiverto wrote:
There is C:\ProgramData\Anaconda3\Library\mingw-w64\bin way before the C:\MinGW\* entries.

Are those two separate (and incompatible) versions of MinGW?
Which combination of tools does the compilation use?
Which combination does the execution of binary use?


I can't answer these questions. I don't even know what MinGW is, safe what versions I have or wether I have different ones that (suddenly?) are incompatible with each other.
I don't know what tools the compiler uses, nor what tools you even mean or where to find this information.
I don't know what "combination the execution of binary" uses or where to find this info =(

I installed Anaconda some time ago. I certainly did not manually create another mingw folder or anything...

Last edited on
http://www.mingw.org/
MinGW offers a port of GCC for Windows. A C++ compiler.

You have installed anaconda. It seems you have used the conda to install a mingw (among other packages). The C:\MinGW is either result of that or a separate installation.



Bash is a shell, not a terminal. Shells (except cmd.exe) tend to have no integrated GUI. Separate terminal programs provide GUI shell's command prompt.
No, you don't need bash.
Yes, I used conda to install a few python related packages. Maybe one of these contained mingw? This would be pretty bad on their terms, wouldn't it?

So, what should I do :( ?
For the moment, I went back coding with CodeBlocks IDE, but it bothers me that manual executing doesn't work.
I don't even know what MinGW is

What IDE are you using? What compiler are you using?
"gcc (i686-posix-sjlj-rev0, Built by MinGW-W64 project) 7.1.0"

I am using Code::Blocks (but compiling and executing with Code::Blocks works fine. The error only appears, if I manually compile in cmd and then try to run the .exe).
Last edited on
Topic archived. No new replies allowed.
Pages: 12