Forum: PC Hard- und Software Makefile ausführen


von Oder?auch!nicht? (Gast)


Lesenswert?

Gegeben:

Visual Studio 2022
Windows10
Makefile
Einige Quelldateien

Unter Linux den Dreisprung durchführen und das war’s.

Nun hier unter Windows möchte ich auch compilieren, bekomme das aber 
nicht hin.



Was muß ich genau machen? Kann mir bitte jemand helfen?

von Oliver S. (oliverso)


Lesenswert?

Ob’s schmerzfrei funktioniert, hängt davon ab, welche Libs das makefile 
gerne hätte.
Im Studio ein makefile Projekt anlegen, und schauen, was passiert.

Oliver

von Oder?auch!nicht? (Gast)


Lesenswert?

Das Makefile ist ja bereits vorhanden. Ich weiß nicht weiter.

von Yalu X. (yalu) (Moderator)


Lesenswert?

Oder?auch!nicht? schrieb:
> Das Makefile ist ja bereits vorhanden.

Sehr gut, dann brauchst du maximal noch einen Zweisprung.

> Ich weiß nicht weiter.

Was passiert denn, wenn du ganz naiv make aufrufst? Da wird dir sicher 
angezeigt, woran es fehlt.

von Oder?auch!nicht? (Gast)


Lesenswert?

Der scheint weder make noch make zu kennen.

von Oder?auch!nicht? (Gast)


Lesenswert?

nmake

von Oder?auch!nicht? (Gast)


Lesenswert?

Habe aber make installiert

von c-hater (Gast)


Lesenswert?

Yalu X. schrieb:

> Was passiert denn, wenn du ganz naiv make aufrufst? Da wird dir sicher
> angezeigt, woran es fehlt.

Hihi. Ich würde bei der Kompetenz des TO mal vermuten:

make: *** No targets specified and no makefile found.  Stop.

von Yalu X. (yalu) (Moderator)


Lesenswert?

Oder?auch!nicht? schrieb:
> Habe aber make installiert

Wohin (in welches Verzeichnis)?

von Oder?auch!nicht? (Gast)


Lesenswert?

Es gibt keinen Grund sich lustig zu machen.

von Oder?auch!nicht? (Gast)


Lesenswert?

Yalu X. schrieb:
> Oder?auch!nicht? schrieb:
>> Habe aber make installiert
>
> Wohin (in welches Verzeichnis)?

Das brauchte ich nicht angeben.

Eine kurze Beschreibung
Win+r
Singet install
Y
Ja
Erfolgreich installiert

Win+R
Ausführen
Systempropertiesadvanced
Ja
Systemeigenschaften
Umgebungsvariablen
Systemvariablen
Neu
Variablen Name
Make
C:\program files(x80)\gnuwin32\bin\make.exe
Ok

So in etwa. Und nun?

von N. M. (mani)


Lesenswert?

Oder?auch!nicht? schrieb:
> Win+R
> Ausführen
> Systempropertiesadvanced
> Ja
> Systemeigenschaften
> Umgebungsvariablen
> Systemvariablen
> Neu
> Variablen Name
> Make
> C:\program files(x80)\gnuwin32\bin\make.exe
> Ok

Keine harten Drogen!

von c-hater (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:

[...]
> So in etwa. Und nun?

Also ich schaue parallel gerade Idiocracy. Und wenn ich sowas lese, muss 
ich deshalb sagen: 2505 is now...

von Nano (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:
> Was muß ich genau machen? Kann mir bitte jemand helfen?

Werden mit den Quellcodedateien Visual Studio Projektdateien 
mitgeliefert?
Falls nein, dann musst du dich von Hand darum kümmern.

Wenn du aber ohnehin das ganze mit GNU Make und GNU GCC compilieren 
willst, dann brauchst du dafür VS nicht.

Installiere dir am besten MinGW64 und versuch es damit:
https://www.mingw-w64.org/

von Oder?auch!nicht? (Gast)


Lesenswert?

Und wie, wenn es installiert ist?

von Nano (Gast)


Lesenswert?


von Oder?auch!nicht? (Gast)


Lesenswert?

Yalu X. schrieb:
> Oder?auch!nicht? schrieb:
>> Das Makefile ist ja bereits vorhanden.
>
> Sehr gut, dann brauchst du maximal noch einen Zweisprung.
>
>> Ich weiß nicht weiter.
>
> Was passiert denn, wenn du ganz naiv make aufrufst? Da wird dir sicher
> angezeigt, woran es fehlt.

Und wie würde der Zweisprung aussehen?

von g457 (Gast)


Lesenswert?

> Und wie würde der Zweisprung aussehen?

Fang erst mal mit make an. Dann dessen Ausgabe lesen.

HTH

von Oder?auch!nicht? (Gast)


Lesenswert?

c-hater schrieb:
> Yalu X. schrieb:
>
>> Was passiert denn, wenn du ganz naiv make aufrufst? Da wird dir sicher
>> angezeigt, woran es fehlt.
>
> Hihi. Ich würde bei der Kompetenz des TO mal vermuten:
>
> make: *** No targets specified and no makefile found.  Stop.

**********************************************************************
** Visual Studio 2022 Developer Command Prompt v17.1.5
** Copyright (c) 2022 Microsoft Corporation
**********************************************************************

C:\Program Files\Microsoft Visual Studio\2022\Community>make
Der Befehl "make" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.

C:\Program Files\Microsoft Visual Studio\2022\Community>nmake

Microsoft (R) Program Maintenance Utility, Version 14.31.31107.0
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

NMAKE : fatal error U1064: MAKEFILE nicht gefunden und kein Ziel 
angegeben
Stop.

C:\Program Files\Microsoft Visual Studio\2022\Community>

von Oder?auch!nicht? (Gast)


Lesenswert?

Microsoft (R) Program Maintenance Utility, Version 14.31.31107.0
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

Makefile(23) : fatal error U1104: Unbekannte Textfunktion „shell“
Stop.

von Rolf M. (rmagnus)


Lesenswert?

Oder?auch!nicht? schrieb:
> Der Befehl "make" ist entweder falsch geschrieben oder
> konnte nicht gefunden werden.

Die Meldung fand ich immer irgendwie irritierend. Also kann es sein, 
dass "make" gefunden wurde?

> C:\Program Files\Microsoft Visual Studio\2022\Community>nmake
>
> Microsoft (R) Program Maintenance Utility, Version 14.31.31107.0
> Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.
>
> NMAKE : fatal error U1064: MAKEFILE nicht gefunden und kein Ziel
> angegeben
> Stop.
>
> C:\Program Files\Microsoft Visual Studio\2022\Community>

Vermutlich steht dein Quellcode nicht in C:\Program Files\Microsoft 
Visual Studio\2022\Community, weshalb dort auch kein Makefile gefunden 
wurde.

von Schützt die OPAMP-Tiere! (Gast)


Lesenswert?

Rolf M. schrieb:
> Oder?auch!nicht? schrieb:
>> Der Befehl "make" ist entweder falsch geschrieben oder
>> konnte nicht gefunden werden.
>
> Die Meldung fand ich immer irgendwie irritierend. Also kann es sein,
> dass "make" gefunden wurde?

Entweder gibt es ein Programm mit dem Namen, dass aber nicht installiert 
ist (und damit dem System nicht bekannt ist), oder du hast dich einfach 
vertippt.
=> "Kenn ich nicht, kann ich nicht ausführen" wäre vielleicht etwas 
direkter ;-)

von Nano (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:
> Unter Linux den Dreisprung durchführen und das war’s.
>
> Nun hier unter Windows möchte ich auch compilieren, bekomme das aber
> nicht hin.
>
> Was muß ich genau machen? Kann mir bitte jemand helfen?

Wenn's unter Linux geht, dann könntest du auch einfach unter Linux für 
Windows crosscompilen:

https://jake-shadle.github.io/xwin/

http://forums.codeblocks.org/index.php?topic=3343.0

https://stackoverflow.com/questions/2033997/how-to-compile-for-windows-on-linux-with-gcc-g

von c-hater (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:

> NMAKE : fatal error U1064: MAKEFILE nicht gefunden und kein Ziel
> angegeben
> Stop.

Ich hatte es ja vorausgeahnt...

von Oder?auch!nicht? (Gast)


Lesenswert?

c-hater schrieb:
> Oder?auch!nicht? schrieb:
>
>> NMAKE : fatal error U1064: MAKEFILE nicht gefunden und kein Ziel
>> angegeben
>> Stop.
>
> Ich hatte es ja vorausgeahnt...

Das war aber nicht so schwierig.

Nur wie geht es weiter. Was muß sich wo befinden?

von c-hater (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:

> Nur wie geht es weiter. Was muß sich wo befinden?

Find's selber raus. Lerne, was make/nmake tut.

von Oder?auch!nicht? (Gast)


Lesenswert?

Sehr hilfreich und unfreundlich!

von Rolf M. (rmagnus)


Lesenswert?

Oder?auch!nicht? schrieb:
> Nur wie geht es weiter. Was muß sich wo befinden?

Das sollte der Hinweis dazu sein:

Rolf M. schrieb:
> Vermutlich steht dein Quellcode nicht in C:\Program Files\Microsoft
> Visual Studio\2022\Community, weshalb dort auch kein Makefile gefunden
> wurde.

Du musst dich in dem Verzeichnis befinden, wo dein Makefile liegt. Wie 
sollte make es sonst finden?

Schützt die OPAMP-Tiere! schrieb:
> Rolf M. schrieb:
>> Oder?auch!nicht? schrieb:
>>> Der Befehl "make" ist entweder falsch geschrieben oder
>>> konnte nicht gefunden werden.
>>
>> Die Meldung fand ich immer irgendwie irritierend. Also kann es sein,
>> dass "make" gefunden wurde?
>
> Entweder gibt es ein Programm mit dem Namen, dass aber nicht installiert
> ist (und damit dem System nicht bekannt ist), oder du hast dich einfach
> vertippt.

Klar. In beiden Fällen konnte das System allerdings ein Programm mit dem 
Namen nicht finden. Es behauptet aber, dass es das nur dann nicht finden 
konnte, wenn ich mich nicht vertippt habe.

> => "Kenn ich nicht, kann ich nicht ausführen" wäre vielleicht etwas
> direkter ;-)

Wäre mir auch eher sympatisch :)

von c-hater (Gast)


Lesenswert?

Rolf M. schrieb:

> Du musst dich in dem Verzeichnis befinden, wo dein Makefile liegt. Wie
> sollte make es sonst finden?

Das ist natürlich korrekt, aber hilft dem TO vermutlich kein bissel 
weiter. Der kennt weder das Konzept des "aktuellen Verzeichnisses" noch 
weiss er, wie man das ändert.

Der weiss nix und will auch nix lernen. Er will nur den Code kompiliert 
bekommen. Muss man sowas unterstützen? Ich bin der Meinung: nein, das 
muss man nicht. Mehr noch: das sollte man nichtmal.

von Oder?auch!nicht? (Gast)


Lesenswert?

Wenn Du nix beizutragen hast, dann halte dein Maul!

von Oder?auch!nicht? (Gast)


Lesenswert?

Mir würde einmal erst ausreichen wo sich make bzw. nmake aufhalten 
sollten.

von c-hater (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:

> Mir würde einmal erst ausreichen wo sich make bzw. nmake aufhalten
> sollten.

Von Environment-Variablen, inbesondere path hat er offensichtlich auch 
keinerlei Ahnung...

Er hat generell wohl keinerlei Ahnung vom Umgang mit seinem OS. Denn die 
gesuchte Information könnte man sogar rausfinden ohne jede Ahnung von 
"path". Nur halt "etwas" langsamer...

von Dekan (Gast)


Lesenswert?

> C:\program files(x80)\gnuwin32\bin\make.exe

Da muss dann wohl noch ein freier Sockel auf deinem Bord sein.
Da solltest du dann einen i8080 hineinstecken.
Und den Support fuer i8080 nachinstallieren.

> Oder?auch!nicht?

Schon der Nick verraet, dass du nur ein Schwaetzer bist.

von Oder?auch!nicht? (Gast)


Lesenswert?

Darüber bin ich gestern auch gestolpert, müßte und sollte natürlich x86 
heißen. Grrr. Hätte der hater auch sofort sagen können. Der hatte es es 
auch bemerkt, vermutlich.

Ich muß das noch prüfen und melde mich falls es di3 alleinige Ursache 
ist.

Danke nochmals für den guten Tipp.

von Oder?auch!nicht? (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:
> Darüber bin ich gestern auch gestolpert, müßte und sollte
> natürlich x86
> heißen. Grrr. Hätte der hater auch sofort sagen können. Der hatte es es
> auch bemerkt, vermutlich.
>
> Ich muß das noch prüfen und melde mich falls es di3 alleinige Ursache
> ist.
>
> Danke nochmals für den guten Tipp.

Der Tippfehler befindet sich NUR hier im Forum. Auf meinem PC stimmt es.

Auf der Suche nach "make.exe" finde ich etliche "makecab" Files.

hier fand ich make.exe -> C:\Program Files (x86)\GnuWin32\bin

von Dekan (Gast)


Lesenswert?

Das Konzept eines Suchpfades fuer ausfuehrbare Dateien scheint
dir nicht vertraut.
Wenn Mann es nicht systemweit eintragen mag, schreibt Mann sich
halt einen kleinen Wrapper der es passend setzt.

Es steht dir natuerlich auch frei, immer den ganzen Latschen
einzutippen.

von Yalu X. (yalu) (Moderator)


Lesenswert?

Bevor das hier noch tagelang erfolglos so weitergeht, hätte ich mal ein
paar Fragen:

Um welches Programm geht es hier überhaupt? Ist es überhaupt unter
Windows lauffähig, oder muss es ggf. erst noch angepasst werden?

Selbst wenn das Programm für mehrere Plattformen (z.B. Linux und
Windows) gemacht ist, ist das existierende Makefile überhaupt das
richtige für Windows?

Hintergrund:

Du schreibst, dass du unter Linux einen so genannten Dreisprung
durchführst. Der erste Schritt davon ist configure. Dieses erzeugt ein
plattformspezifisches Makefile. Wenn du jetzt einfach dieses Makefile
nach Windows kopierst, wird es dort mit hoher Wahrscheinlichkeit nicht
funktionieren. Du musst configure auch unter Windows ausführen, damit
ein neues, an deine Windows-Installation angepasstes Makefile erstellt
wird. Um configure überhaupt ausführen zu können, brauchst du eine
POSIX-konforme Shell und wahrscheinlich noch weitere POSIX-Tools. Da du
aber schon mit dem bloßen Aufruf von make nahezu unüberwindliche
Probleme hast, erscheint mir das Ganze ziemlich aussichtslos. Das soll
keine Kritik an dir sein, aber du bist wohl einfach kein erfahrener
Windows-User (ich bin's übrigens auch nicht :)).

Gibt es das Programm nicht irgendwo auch als fertiges Windows-Binary?

Wenn nicht: Ist das Programm Open Source? Dann poste doch mal einen
Link, so dass jemand, der sich besser mit solchen Dingen auskennt, sagen
kann, ob es überhaupt unter Windows lauffähig ist und welche Tools,
Bibliotheken usw. du ggf. noch brauchst. Vielleicht erbarmt sich sogar
jemand und baut das Programm für dich.

von Oder?auch!nicht? (Gast)


Lesenswert?

Es ist unter Windows lauffähig

Es ist ein Konsolen Programm

Ein neues Makefile benötige ich erst einmal nicht, trotzdem hätte ich 
gerne gewusst wie man „configure“ es unter Windows macht.

Ich hatte die Quelldateien  bereits unter Visual Studio compiliert, das 
hat auch funktioniert, nur funktioniert es nicht so wie ich es möchte.

Da aber das Makefile dabei war wollte ich es ausprobieren.

So kurz und knapp…

von Oder?auch!nicht? (Gast)


Lesenswert?

P.s.

Ich habe kein Linux mehr, weiß aber wie man es dort handhabt.

von Yalu X. (yalu) (Moderator)


Lesenswert?

Oder?auch!nicht? schrieb:
> Es ist unter Windows lauffähig

Woher weißt du das?

> Ein neues Makefile benötige ich erst einmal nicht

Woher weißt du das?

> Ich hatte die Quelldateien  bereits unter Visual Studio compiliert, das
> hat auch funktioniert, nur funktioniert es nicht so wie ich es möchte.

Was heißt das?

Falls das Programm fehlerfrei kompiliert und bei der Ausführung keine
Fehlermeldungen ausgibt, aber dennoch nicht genau das tut, was du
erwartest, wird sich daran durch das Kompilieren mit dem Makefile sehr
wahrscheinlich auch nichts ändern.

Das soll dich natürlich nicht davon abhalten, weiter herumzuprobieren.

von Oliver S. (oliverso)


Lesenswert?

Oder?auch!nicht? schrieb:
> Ein neues Makefile benötige ich erst einmal nicht, trotzdem hätte ich
> gerne gewusst wie man „configure“ es unter Windows macht.

Kurz und knapp: am besten gar nicht. Du kannst es zwar mit Cygwin oder 
mingw versuchen, aber Krampf bleibt es trotzdem.

Oliver

von Oder?auch!nicht? (Gast)


Lesenswert?

Yalu X. schrieb:
> Oder?auch!nicht? schrieb:
>> Es ist unter Windows lauffähig
>
> Woher weißt du das?
>

Das tut nicht zur Sache bei.

>> Ein neues Makefile benötige ich erst einmal nicht
>
> Woher weißt du das?
>

Ich weiß das halt.

>> Ich hatte die Quelldateien  bereits unter Visual Studio compiliert, das
>> hat auch funktioniert, nur funktioniert es nicht so wie ich es möchte.
>
> Was heißt das?
Stellt irgendwann den Dienst ein, Bitgewerkschaft?

> Falls das Programm fehlerfrei kompiliert und bei der Ausführung keine
> Fehlermeldungen ausgibt, aber dennoch nicht genau das tut, was du
> erwartest, wird sich daran durch das Kompilieren mit dem Makefile sehr
> wahrscheinlich auch nichts ändern.
>
Das ist die Frage für mich.
> Das soll dich natürlich nicht davon abhalten, weiter herumzuprobieren.

von Nano (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:
> Mir würde einmal erst ausreichen wo sich make bzw. nmake aufhalten
> sollten.

Zumindest mit dem Dateimanager solltest du umgehen können. Der hat eine 
Suchfunktion, die kann man benutzen.
Das gehört zum 1 mal 1 der Computerbedienung.

Vom Schwierigkeitsgrad her liegt das auf der Stufe von Windows Fenster 
vergrößer und verkleinern.


Und wenn du das gelernt hast, dann solltest du auch mal lernen, wie und 
wo man in Windows die PATH Variable einstellt.
Und dann kannst du auch gleich mal nachgucken, ob das Verzeichnis, in 
dem GNU make liegt, auch in diese PATH Variable eingetragen ist.
Poste am besten den Inhalt der PATH Variable.

Lerne auch, sie nicht nur zu verändern, sondern sie auch auszugeben.

von Oder?auch!nicht? (Gast)


Lesenswert?

Hallo Moderator,

können Sie bitte die Antworten vom c-hater löschen? Ich bitte darum.

von Oder?auch!nicht? (Gast)


Lesenswert?

C:\Program Files (x86)\GnuWin32\bin>make -h
Syntax: make [Optionen] [Target] ...
Optionen:
  -b, -m                      Aus Kompatibilitätsgründen ignoriert
  -B, --always-make           Alle Ziele ohne Bedingungen erstellen
  -C VERZEICHNIS, --directory=VERZEICHNIS
                              In VERZEICHNIS wechseln, bevor etwas getan 
wird
  -d                          Print lots of debugging information.
  --debug[=FLAGS]             Print various types of debugging 
information.
  -e, --environment-overrides
                              Umgebungsvariablen überschreiben 
»make«-Steuerdateien
  -f DATEI, --file=DATEI, --makefile=DATEI
                              DATEI als »make«-Steuerdatei lesen
  -h, --help                  Diese Meldung ausgeben und beenden
  -i, --ignore-errors         Ignore errors from commands.
  -I VERZEICHNIS, --include-dir=VERZEICHNIS
                              VERZEICHNIS nach inkludierten
                              »make«-Steuerdateien durchsuchen
  -j [N], --jobs[=N]          Allow N jobs at once; infinite jobs with 
no arg.
  -k, --keep-going            Keep going when some targets can't be 
made.
  -l [N], --load-average[=N], --max-load[=N]
                              Don't start multiple jobs unless load is 
below N.
  -L, --check-symlink-times   Use the latest mtime between symlinks and 
target.
  -n, --just-print, --dry-run, --recon
                              Don't actually run any commands; just 
print them.
  -o FILE, --old-file=FILE, --assume-old=FILE
                              Consider FILE to be very old and don't 
remake it.
  -p, --print-data-base       Print make's internal database.
  -q, --question              Run no commands; exit status says if up to 
date.
  -r, --no-builtin-rules      Disable the built-in implicit rules.
  -R, --no-builtin-variables  Disable the built-in variable settings.
  -s, --silent, --quiet       Befehle nicht ausgeben.
  -S, --no-keep-going, --stop
                              -k abschalten.
  -t, --touch                 Touch targets instead of remaking them.
  -v, --version               Print the version number of make and exit.
  -w, --print-directory       Print the current directory.
  --no-print-directory        Turn off -w, even if it was turned on 
implicitly.
  -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE
                              Consider FILE to be infinitely new.
  --warn-undefined-variables  Warn when an undefined variable is 
referenced.

This program built for i386-pc-mingw32
Fehlermeldungen (auf Englisch) an <bug-make@gnu.org> senden.

C:\Program Files (x86)\GnuWin32\bin>


Immer noch niemand hier der mir helfen kann? Sarrazin hat Recht!

von Yalu X. (yalu) (Moderator)


Lesenswert?

Oder?auch!nicht? schrieb:
> Yalu X. schrieb:
>> Oder?auch!nicht? schrieb:
>>> Es ist unter Windows lauffähig
>>
>> Woher weißt du das?
>>
>
> Das tut nicht zur Sache bei.
>
>>> Ein neues Makefile benötige ich erst einmal nicht
>>
>> Woher weißt du das?
>>
>
> Ich weiß das halt.
>
>>> Ich hatte die Quelldateien  bereits unter Visual Studio compiliert, das
>>> hat auch funktioniert, nur funktioniert es nicht so wie ich es möchte.
>>
>> Was heißt das?
> Stellt irgendwann den Dienst ein, Bitgewerkschaft?

Damit, dass du es mit solchen Antworten den Leuten absichtlich schwer
machst, dir zu helfen, machst du dir letztendlich nur selber das Leben
schwer.

Aber gut, ich wage noch einen letzten Versuch, bevor ich entnervt
aufgebe.

Oder?auch!nicht? schrieb:
> Immer noch niemand hier der mir helfen kann?

Das tun die Leute doch schon die ganze Zeit, du musst ihre Beiträge nur
lesen, so bspw. diesen hier:

Nano schrieb:
> Und wenn du das gelernt hast, dann solltest du auch mal lernen, wie und
> wo man in Windows die PATH Variable einstellt.
> Und dann kannst du auch gleich mal nachgucken, ob das Verzeichnis, in
> dem GNU make liegt, auch in diese PATH Variable eingetragen ist.
> Poste am besten den Inhalt der PATH Variable.

Google findet dazu u.a. diese Anleitung:

  https://ekiwi-blog.de/19215/path-variable-in-windows-konfigurieren-und-bearbeiten/

Eine weitere wichtige Hilfestellung, die du lesen solltest:

Rolf M. schrieb:
> Du musst dich in dem Verzeichnis befinden, wo dein Makefile liegt.

Google findet dazu u.a. diese Anleitung:

  https://de.minitool.com/nachrichten/verzeichnis-in-eingabeaufforderung-wechseln.html

Ach so, du kennst Google noch nicht? Kein Problem:

  https://www.google.de/

Nachdem die PATH-Variable richtig gesetzt ist und du dich in der so
genannten "Eingabeaufforderung" im Verzeichnis mit dem Makefile (und dem
Quellcode) befindest, musst du nur noch make aufrufen:
1
make

Ggf. musst du hier noch ein Target angeben. Die verfügbaren Targets sind
in deinem streng geheimen Makefile definiert, dewegen kann ich dir
hierzu keine konkreten Vorschläge machen.

Evtl. erscheinen Fehlermeldungen bzgl. nicht gefundener Tools. Dann
musst du diese installieren und make erneut aufrufen.

: Bearbeitet durch Moderator
von Oliver S. (oliverso)


Lesenswert?

Yalu X. schrieb:
> Evtl. erscheinen Fehlermeldungen bzgl. nicht gefundener Tools.

Nicht nur eventuell. Es wird kein Compiler gefunden werden.

Oliver

von Oder?auch!nicht? (Gast)


Lesenswert?

Mit diesem Link:

https://ekiwi-blog.de/19215/path-variable-in-windows-konfigurieren-und-bearbeiten/

bin ich weiter gekommen. Danke dafür. Die Beschreibung passt aber nicht 
1:1, aber mit der Suchfunktion habe ich die Einstellungen gefunden. 
Nochmals Dankeschön.

Mich hatte irritiert das ich bei der Make Installation den Pfad schon 
korrekt angegeben habe. Siehe mein Posting weiter oben.

von Oder?auch!nicht? (Gast)


Lesenswert?

Zumindest funktioniert jetzt der make Aufruf.

Und spuckt weitere Fehler aus.

von Oder?auch!nicht? (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:
> Zumindest funktioniert jetzt der make Aufruf.
>
> Und spuckt weitere Fehler aus.

C:\......\src>make
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, g++ --version, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, g++ --version, ...) failed.
Das System kann den angegebenen Pfad nicht finden.
make: [.depend] Fehler 1 (ignoriert)
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, g++ --version, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, g++ --version, ...) failed.

von Oder?auch!nicht? (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:
> Zumindest funktioniert jetzt der make Aufruf.
>
> Und spuckt weitere Fehler aus.

C:\......\src>make
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, g++ --version, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, g++ --version, ...) failed.
Das System kann den angegebenen Pfad nicht finden.
make: [.depend] Fehler 1 (ignoriert)
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, g++ --version, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, g++ --version, ...) failed.

Ich kann aber nicht nach g++ suchen, der findet nur überall g

von Yalu X. (yalu) (Moderator)


Lesenswert?

Oder?auch!nicht? schrieb:
> Ich kann aber nicht nach g++ suchen, der findet nur überall g

Oliver hat's vorhergesehen:

Oliver S. schrieb:
> Es wird kein Compiler gefunden werden.

Wahrscheinlich musst du MSYS2 installieren:

  https://www.msys2.org/

Am besten löschst du vorher den GunWin32-Eintrag in der PATH-Variable
(den du heute gemacht hast) wieder, damit es zu keinen Konflikten
zwischen Tools kommt, die sowohl in GnuWin32 als auch in MSYS2 enthalten
sind.

von Oder?auch!nicht? (Gast)


Lesenswert?

Habe ich gemacht, msys2.exe installiert, und nun das hier:


$ make build
make: g++: No such file or directory
make: g++: No such file or directory

von Oder?auch!nicht? (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:
> Habe ich gemacht, msys2.exe installiert, und nun das hier:
>
> $ make build
> make: g++: No such file or directory
> make: g++: No such file or directory

Muß man den noch extra installieren?

von Oliver S. (oliverso)


Lesenswert?

Oder?auch!nicht? schrieb:
> Oder?auch!nicht? schrieb:
>> Habe ich gemacht, msys2.exe installiert, und nun das hier:
>>
>> $ make build
>> make: g++: No such file or directory
>> make: g++: No such file or directory
>
> Muß man den noch extra installieren?

Ja

von Oder?auch!nicht? (Gast)


Lesenswert?

Ich hatte es bereits vermutet.

von I <3 Makefiles (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:
> Nun hier unter Windows möchte ich auch compilieren, bekomme das aber
> nicht hin.
>
> Was muß ich genau machen? Kann mir bitte jemand helfen?

Oder?auch!nicht? schrieb:
> Ich hatte es bereits vermutet.

nunja, wohl doch nicht ganz.

zum Kompilieren braucht man (Du auch!) einen... Kompiler!

Welchen Kompiler? Das geben deine Quelltexte vor...

Weitere SW-Tools: siehe was im Makefile aufgerufen wird.
ACHTUNG: Makefile kennt implicit /rules/ welche nunja... implizit 
vorausgesetzte SW-Tools aufrufen...
1
$ man make
Jaaaa: auch unter Windows eine Pflichtlektüre!

von Oder?auch!nicht? (Gast)


Lesenswert?

I <3 Makefiles schrieb:
> Oder?auch!nicht? schrieb:
>> Nun hier unter Windows möchte ich auch compilieren, bekomme das aber
>> nicht hin.
>>
>> Was muß ich genau machen? Kann mir bitte jemand helfen?
>
> Oder?auch!nicht? schrieb:
>> Ich hatte es bereits vermutet.
>
> nunja, wohl doch nicht ganz.
>
> zum Kompilieren braucht man (Du auch!) einen... Kompiler!
>
> Welchen Kompiler? Das geben deine Quelltexte vor...
>
> Weitere SW-Tools: siehe was im Makefile aufgerufen wird.
> ACHTUNG: Makefile kennt implicit rules welche nunja... implizit
> vorausgesetzte SW-Tools aufrufen...
> $ man make
> Jaaaa: auch unter Windows eine Pflichtlektüre!

$ make build ARCH=x86-64 COMP=g++
Default net: xxxxxxx
Already available.

Config:
debug: 'no'
sanitize: 'none'
optimize: 'yes'
arch: 'x86_64'
bits: '64'
kernel: 'MSYS_NT-10.0-19044'
os: 'Windows_NT'
prefetch: 'yes'
popcnt: 'no'
pext: 'no'
sse: 'yes'
mmx: 'no'
sse2: 'yes'
ssse3: 'no'
sse41: 'no'
avx2: 'no'
avxvnni: 'no'
avx512: 'no'
vnni256: 'no'
vnni512: 'no'
neon: 'no'
arm_version: '0'

Flags:
CXX: g++
CXXFLAGS: -Wall -Wcast-qual -fno-exceptions -std=c++17  -DUSE_PTHREADS 
-DNDEBUG -O3 -DIS_64BIT -msse -DUSE_SSE2 -msse2
LDFLAGS:  -static -lpthread

Testing config sanity. If this fails, try 'make help' ...

make: *** [Makefile:918: config-sanity] Error 1

von Oder?auch!nicht? (Gast)


Lesenswert?

make: *** [Makefile:918: config-sanity] Error 1

Was bedeutet das?

von Thomas F. (tommf)


Lesenswert?

Oder?auch!nicht? schrieb:
> make: *** [Makefile:918: config-sanity] Error 1
>
> Was bedeutet das?

Dass irgendwas an deiner Konfiguration nicht stimmt. Das können 
wiedersprüchliche Flags oder fehlende Angaben sein.

Wenn du mal verraten würdest, um welche Software es geht, könnte man dir 
vielleicht helfen. So wird sich das aber noch Wochen hinziehen.

: Bearbeitet durch User
von Yalu X. (yalu) (Moderator)


Lesenswert?

Oder?auch!nicht? schrieb:
> make: *** [Makefile:918: config-sanity] Error 1
>
> Was bedeutet das?

Oder?auch!nicht? schrieb:
> Testing config sanity. If this fails, try 'make help' ...

von Rolf M. (rmagnus)


Lesenswert?

Oder?auch!nicht? schrieb:
> make: *** [Makefile:918: config-sanity] Error 1
>
> Was bedeutet das?

Dass die Regel in Zeile 918 von deinem Makefile fehlgeschlagen ist.

von Oder?auch!nicht? (Gast)


Lesenswert?

Rolf M. schrieb:
> Oder?auch!nicht? schrieb:
>> make: *** [Makefile:918: config-sanity] Error 1
>>
>> Was bedeutet das?
>
> Dass die Regel in Zeile 918 von deinem Makefile fehlgeschlagen ist.

Oh, danke. Das ist ein wertvoller Tipp. Ab damit in Notenpapad++….

von Oder?auch!nicht? (Gast)


Lesenswert?

Herrlich diese künstliche Intelligenz…

von Oder?auch!nicht? (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:
> Rolf M. schrieb:
>> Oder?auch!nicht? schrieb:
>>> make: *** [Makefile:918: config-sanity] Error 1
>>>
>>> Was bedeutet das?
>>
>> Dass die Regel in Zeile 918 von deinem Makefile fehlgeschlagen ist.
>
> Oh, danke. Das ist ein wertvoller Tipp. Ab damit in Notenpapad++….

mit # auskommentiert

von Oder?auch!nicht? (Gast)


Lesenswert?

grrrrr...

$ make build ARCH=x86-64 COMP=g++
Makefile:912: *** missing separator.  Stop.


Hier ein Auszug vom Makefile:

  @test "$(debug)" = "yes" || test "$(debug)" = "no"
  @test "$(optimize)" = "yes" || test "$(optimize)" = "no"
  @test "$(SUPPORTED_ARCH)" = "true"
  @test "$(arch)" = "any" || test "$(arch)" = "x86_64" || test "$(arch)" 
= "i386" || \
  @test "$(arch)" = "ppc64" || test "$(arch)" = "ppc" || test "$(arch)" 
= "e2k" || \
  @test "$(arch)" = "armv7" || test "$(arch)" = "armv8" || test 
"$(arch)" = "arm64"
  @test "$(bits)" = "32" || test "$(bits)" = "64"
  @test "$(prefetch)" = "yes" || test "$(prefetch)" = "no"
  @test "$(popcnt)" = "yes" || test "$(popcnt)" = "no"
  @test "$(pext)" = "yes" || test "$(pext)" = "no"
  @test "$(sse)" = "yes" || test "$(sse)" = "no"
  @test "$(mmx)" = "yes" || test "$(mmx)" = "no"
   @test "$(sse2)" = "yes" || test "$(sse2)" = "no"
  @test "$(ssse3)" = "yes" || test "$(ssse3)" = "no"
  @test "$(sse41)" = "yes" || test "$(sse41)" = "no"
  @test "$(avx2)" = "yes" || test "$(avx2)" = "no"
  @test "$(avx512)" = "yes" || test "$(avx512)" = "no"
  @test "$(vnni256)" = "yes" || test "$(vnni256)" = "no"
  #@test "$(vnni512)" = "yes" || test "$(vnni512)" = "no"
  @test "$(neon)" = "yes" || test "$(neon)" = "no"
  @test "$(comp)" = "gcc" || test "$(comp)" = "icc" || test "$(comp)" = 
"mingw" || test "$(comp)" = "clang" \
  || test "$(comp)" = "armv7a-linux-androideabi16-clang"  || test 
"$(comp)" = "aarch64-linux-android21-clang"

Zeile 912:
   @test "$(sse2)" = "yes" || test "$(sse2)" = "no"

Wo klemmt das hier?

von Oder?auch!nicht? (Gast)


Lesenswert?

gefunden! Leerzeichen am Anfang der Zeile entfernt.

von Yalu X. (yalu) (Moderator)


Lesenswert?

Oder?auch!nicht? schrieb:
> Was bedeutet das?

Das bedeutet, dass dieser Aufruf fehlerhaft ist:

Oder?auch!nicht? schrieb:
> $ make build ARCH=x86-64 COMP=g++

Hättest du gleich gesagt, um welche Software es sich handelt, hätte ich
dich auch gleich auf diesen Fehler hinweisen können. So aber musste ich
erst mühsam nach dem Ursprung der "geheimen" Software suchen (die gar
nicht so geheim ist, denn immerhin bin ich ja fündig geworden ;-)).

Übrigens kann folgende Frage mit "ja" beantwortet werden:

Yalu X. schrieb:
> Gibt es das Programm nicht irgendwo auch als fertiges Windows-Binary?

Lade dir also einfach die Exe herunter und werde glücklich.

Wozu überhaupt die ganze Geheimniskrämerei? Die Software ist Open Source
und auf Github für jeden einsehbar. Du hättest hier nur einen Link zu
posten brauchen, dann wären alle deine Probleme längst gelöst.

Tipp: Wenn du zukünftig wieder Hilfe von anderen erwartest, solltest du
ein Bisschen kooperativer sein.

von Oder?auch!nicht? (Gast)


Lesenswert?

Yalu X. schrieb:
> Oder?auch!nicht? schrieb:
>> Was bedeutet das?
>
> Das bedeutet, dass dieser Aufruf fehlerhaft ist:
>
> Oder?auch!nicht? schrieb:
>> $ make build ARCH=x86-64 COMP=g++
>
> Hättest du gleich gesagt, um welche Software es sich handelt, hätte ich
> dich auch gleich auf diesen Fehler hinweisen können.

Blödsinn hoch 10

>So aber musste ich
> erst mühsam nach dem Ursprung der "geheimen" Software suchen (die gar
> nicht so geheim ist, denn immerhin bin ich ja fündig geworden ;-)).
>
Aha, Da weißt Du mehr als ich!

> Übrigens kann folgende Frage mit "ja" beantwortet werden:
>
> Yalu X. schrieb:
>> Gibt es das Programm nicht irgendwo auch als fertiges Windows-Binary?
>
> Lade dir also einfach die Exe herunter und werde glücklich.
>
Es gibt keine dummen Fragen, aber hier nur sehr dumme Antworten!

> Wozu überhaupt die ganze Geheimniskrämerei? Die Software ist Open Source
> und auf Github für jeden einsehbar. Du hättest hier nur einen Link zu
> posten brauchen, dann wären alle deine Probleme längst gelöst.
>
> Tipp: Wenn du zukünftig wieder Hilfe von anderen erwartest, solltest du
> ein Bisschen kooperativer sein.
???

von Yalu X. (yalu) (Moderator)


Lesenswert?

Oder?auch!nicht? schrieb:
>> Hättest du gleich gesagt, um welche Software es sich handelt, hätte ich
>> dich auch gleich auf diesen Fehler hinweisen können.
>
> Blödsinn hoch 10

Nein, kein Blödsinn. Nachdem ich mir das Makefile angeschaut habe, war
sofort klar, was das Problem ist.

>>So aber musste ich
>> erst mühsam nach dem Ursprung der "geheimen" Software suchen (die gar
>> nicht so geheim ist, denn immerhin bin ich ja fündig geworden ;-)).
>>
> Aha, Da weißt Du mehr als ich!

Wie meinst du das? Weißt du etwa nicht, wo die Software herkommt? Und
trotzdem willst du sie auf deinem PC laufen lassen? Mutig, mutig :)

Oder?auch!nicht? schrieb:
>> Lade dir also einfach die Exe herunter und werde glücklich.
>>
> Es gibt keine dummen Fragen, aber hier nur sehr dumme Antworten!

Ich würde sagen, das ist – nach allem, was wir bisher in diesem Thread
erlebt haben – die einzige unter allen denkbaren Antworten, die dir
wirklich weiterhilft. Wenn du möchtest, verrate ich dir auch gerne den
Link.

von Oder?auch!nicht? (Gast)


Lesenswert?

Mich irritieren Deine Aussagen und helfen mir nicht. Sie sind für mich 
nicht hilfreich!

Hilfreich war Magnus hier: 
Beitrag "Re: Makefile ausführen"

Und dafür Danke ich ihm sehr.

von Yalu X. (yalu) (Moderator)


Lesenswert?

Oder?auch!nicht? schrieb:
> Hilfreich war Magnus hier:
> Beitrag "Re: Makefile ausführen"

Na gut, Hauptsache, das Programm läuft jetzt. Damit sind natürlich meine
obigen Tipps (insbesondere der mit dem fertig gebauten Executable)
obsolet.

von Thomas F. (tommf)


Lesenswert?


von Gerhard Z. (germel)


Lesenswert?

Yalu X. schrieb:
> Wenn du möchtest, verrate ich dir auch gerne den
> Link.

Meinst du den ;-)
https://stockfishchess.org/download/

von Yalu X. (yalu) (Moderator)


Lesenswert?


von Oder?auch!nicht? (Gast)


Lesenswert?

was ist das?

von Oder?auch!nicht? (Gast)


Lesenswert?

Yalu X. schrieb:
> Oder?auch!nicht? schrieb:
>> Hilfreich war Magnus hier:
>> Beitrag "Re: Makefile ausführen"
>
> Na gut, Hauptsache, das Programm läuft jetzt. Damit sind natürlich meine
> obigen Tipps (insbesondere der mit dem fertig gebauten Executable)
> obsolet.

tut es

von Oder?auch!nicht? (Gast)


Lesenswert?

zumindest der compiler meckert nicht mehr

von Nano (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:
>> Übrigens kann folgende Frage mit "ja" beantwortet werden:
>>
>> Yalu X. schrieb:
>>> Gibt es das Programm nicht irgendwo auch als fertiges Windows-Binary?
>>
>> Lade dir also einfach die Exe herunter und werde glücklich.
>>
> Es gibt keine dummen Fragen, aber hier nur sehr dumme Antworten!

Gut, dann frage ich mal. Was hast du mit dem Quellcode vor und warum war 
die dir fertige EXE nicht gut genug?

von Oder?auch!nicht? (Gast)


Lesenswert?

Nix

Ich habe den Code und möchte ihn verarbeiten.

Selbstlos

Zur Übung

Und nicht zur Belustigung einiger.

Ich habe fertig!

von Heiner (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:
> Nix
>
> Ich habe den Code und möchte ihn verarbeiten.
>
> Selbstlos
>
> Zur Übung
>
> Und nicht zur Belustigung einiger.
>
> Ich habe fertig!

Du arroganter, eingebildeter Fatzke!

Ich bewundere die Leute mit dem Hilfekomplex, die Dir geholfen haben.

von Nano (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:
> Ich habe den Code und möchte ihn verarbeiten.

Noch eine Frage. Kannst du das?

von Oder?auch!nicht? (Gast)


Lesenswert?

Habe ich bereits geschrieben.

von Nano (Gast)


Lesenswert?

Oder?auch!nicht? schrieb:
> Habe ich bereits geschrieben.

Du hast geschrieben, dass du das machen möchtest, nicht aber ob du das 
kannst.

von Oder?auch!nicht? (Gast)


Lesenswert?

Ich schrieb „tut es“.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.