Kompilierung auf der Synology möglich - wenn ja, wie?

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

Hab da mal einiges probiert und verstehe nun in etwa wie das läuft.
Wenn ich mir dann aber zB. die Source von Truecrypt oder PS3Server ansehen, stehe ich wieder an.
Etliche Dateien in der Truecrypt Source, wo ich nicht weis ob und wie ich die verwenden soll... *.cpp, *.h usw.
Im PS3 Server Source gibts fast nur jar Files.

Ist wohl etwas komplizierter als ich mir das ursprünglich vorgestellt hatte...:D
 
Grundsätzlich kann man sagen, dass es immer folgenden Dreisatz braucht :-)
Code:
./configure
make
make install
je nach Programm muss man configure noch Parameter (Flags mitgeben)
 
Und wenn es in den Sources kein configure File gibt?
 
ich hätte noch ein Thema für ein kleines Programmierprojekt: 'gefährliche' Dateinamen entdecken. Also man gibt ein Verzeichnis ein und ab da werden alle Dateinamen 'untersucht', ob kompische Sonderzeichen, Leerstellen usw. im Dateinamen enthalten sind, die vielleicht irgendwo Probleme schaffen könnten.

Eine Erweiterung des Programms wäre, diese Dateinamen dann durch eine trickreiche Umbenennung zu 'entschärfen' (ggf. die Lösung so basteln, dass auch der Weg einer Rückbennnung (automatisch) möglich wäre.

Mir ist schon klar, dass es für Teilaspekte bereits Tools gibt ... aber es wäre halt nice, wenn man etwas auf die DS-Gegebenheiten als Kommandozeilentool passendes hätte ...

Itari
 
In etwa so?

Rich (BBCode):
#!/bin/sh

typeset -i n

find . -print | while read fn do replace="$(echo -n "$fn" | tr '[\001-\040]' '[_*]')"

replace="$(echo "$replace" | sed -e 's-ä-ae-g' -e 's-ö-oe-g' -e 's-ü-ue-g' \ -e 's-Ä-Ae-g' -e 's-Ö-Oe-g' -e 's-Ü-Ue-g' \ -e 's-ß-ss-g' )"

[ "$replace" = "$fn" ] && continue

[ -a "$replace" ] && { n=0 while [ -a "$replace$n" ] ; do let n+=1; done replace="$replace$n" }

echo renaming \""$fn\"" to \""$replace\"" mv "$fn" "$replace" done | cat -vt | tee ${1:-.deNTprot}

Quelle: http://www.sax.de/unix-stammtisch/docs/misc/shell.html


Ist hald in diesem Fall ein Shellscript!
 
Zuletzt bearbeitet:
ja sowas in der Art. Wobei ich in meinen PHP-Strecken, die mit Dateien zu tun haben, ISO8859-1 nach UTF und zurück drinne hab ... also nicht nur für deutsche Umlaute, sondern auch für franz. und skand. Zeichen. Da könnte man ja eine Conf.Datei laden, in der die gewünschten Substitutions-Tupel enthalten sind ... also total ausbaufähig und wenn es C oder C++ wäre, auch sauschnell ...

Itari
 
Das Teil hat Probleme mit Special Characters, leading/trailing whitespaces und quotet automatisch so dass "mv" nicht bei allen Dateinamen funktioniert. Ausserdem fummelt es an Directories rum, verwendet veraltete Parameter und noch paar andere Dinge. Also nicht so der Bringer. Eher ein Beispiel wie man es nicht machen sollte...

Hier auf die Schnelle - auch keine Schönheit - eine korrigierte und erweiterte Lösung mit Undo Log (tr nach Belieben anpassen)
Rich (BBCode):
#!/bin/sh
TIMESTAMP="$(date +%Y%m%d_%H%M%S)"
find ${*:-.} \( -type f -o -type l \) | \
while IFS= read -r FILENAME; do
  NEWFILENAME="$(echo -n "$FILENAME" | iconv -f utf-8 -t us-ascii//TRANSLIT | tr "\!\"#$%&\\\'()*+,:;<>?@[]^\`{}|~[:space:][:cntrl:]" "_")"
  if [ "$NEWFILENAME" != "$FILENAME" ]; then
    if [ -e "$NEWFILENAME" ]; then
      n=1
      while [ -e "${NEWFILENAME}_${n}" ]; do
        let n+=1
      done
      NEWFILENAME="${NEWFILENAME}_${n}"
    fi
    mv -v "$FILENAME" "$NEWFILENAME"
    echo "mv -v \"$NEWFILENAME\" \"$FILENAME\"" >> $HOME/undo_${TIMESTAMP}.txt
  fi
done
 
Das Teil hat Probleme mit Special Characters, leading/trailing whitespaces und quotet automatisch so dass "mv" nicht bei allen Dateinamen funktioniert. Ausserdem fummelt es an Directories rum, verwendet veraltete Parameter und noch paar andere Dinge. Also nicht so der Bringer. Eher ein Beispiel wie man es nicht machen sollte...

Alles klar...danke für die Info's :)
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat