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

Status
Für weitere Antworten geschlossen.

DKeppi

Benutzer
Mitglied seit
01. Apr 2011
Beiträge
3.218
Punkte für Reaktionen
74
Punkte
114

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
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
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)
 

DKeppi

Benutzer
Mitglied seit
01. Apr 2011
Beiträge
3.218
Punkte für Reaktionen
74
Punkte
114
Und wenn es in den Sources kein configure File gibt?
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
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
 

DKeppi

Benutzer
Mitglied seit
01. Apr 2011
Beiträge
3.218
Punkte für Reaktionen
74
Punkte
114
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:

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
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
 

scythe42

Benutzer
Mitglied seit
16. Sep 2011
Beiträge
90
Punkte für Reaktionen
0
Punkte
0
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
 

DKeppi

Benutzer
Mitglied seit
01. Apr 2011
Beiträge
3.218
Punkte für Reaktionen
74
Punkte
114
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