LoginSignup
1
0
この記事誰得? 私しか得しないニッチな技術で記事投稿!

GitHub入門 (2) ソースとスクリプトを上げてみる。docker(127)

Last updated at Posted at 2019-09-02

GitHub入門 (1) 入門
https://qiita.com/kaizen_nagoya/items/b6f5b1532fd21fec79c8

<この項は書きかけです。順次追記します。>

符号をあげなくても始められると書いている。
それでは寂しい。

記事を一歩すすめるためshell scriptとCをあげる。
https://github.com/kaizen-nagoya/

みだしの「Branch:master」の右半分の方を見ると「Create new file」とある。
Create a new fileじゃないかという突っ込みはおいておいて、
文字をうつかコピペする。

hello.c
//https://qiita.com/qnighy/items/be04cfe57f8874121e76
#include <stdio.h>
int main(int argc, char ** argv)
{
	if (argc >2 ) {
    		return printf("%s %s\n", argv[1], argv[2] );
	} else {
		return printf("Little parameters %d. %s needs 2 parameters\n", argc-1, argv[0]);
	}
}

スクリプトは
今日のclang error: unknown argument と invalid value
https://qiita.com/kaizen_nagoya/items/abcffef21280a98dc817

で使った

gccl.sh
https://github.com/kaizen-nagoya/hello-world/blob/master/gccl.sh

ただ、別々の目的で作ったため、一方の試験しかできない。

docker/gcc
# ./gccl.sh hello -Wall -std=c17 gcc clang --version
https://qiita.com/qnighy/items/be04cfe57f8874121e76
https://qiita.com/kaizen_nagoya/items/79e771ff681fb27f6070
$ clang hello.c -Wall  -std=c17 -o hellol
Little parameters 0. ./hellol needs 2 parameters.

$ gcc hello.c -Wall -std=c17 -o hellog
Little parameters 0. ./hellog needs 2 parameters.

gcc (GCC) 9.1.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

clang version 7.0.1-8 (tags/RELEASE_701/final)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin

Hello World!と出力するshell scriptを書いてみた。

gitlabにあげるのをためらい、ひとまずdockerの中にこそっとかくしておく。

docker/gcc
# ./gcclhello.sh hello -Wall -std=c17
https://qiita.com/kaizen_nagoya/items/79e771ff681fb27f6070
$ clang hello.c -Wall  -std=c17 -o hellol
Hello World!

$ gcc hello.c -Wall -std=c17 -o hellog
Hello World!

上記で使ったのは、下記。

gcclhello.sh
#!/bin/sh
# (c) @kaizen_nagoya
echo "https://qiita.com/kaizen_nagoya/items/c6a54925fd3510dc0710"
echo "https://qiita.com/kaizen_nagoya/items/79e771ff681fb27f6070"
echo "$ clang $1.c $2  $3 -o $1l"
clang $1.c $2 $3 -o $1l 
if [  -e $1l ]; then
./$1l Hello World! 
fi
echo "\r"
echo "$ gcc $1.c $2 $3 -o $1g"
gcc $1.c $2 $3 -o $1g  
if [  -e $1g ]; then
./$1g Hello World!
fi
echo "\r"
$4 $6
$5 $6

全体を確認するためにdocker hubにあげた。

$ docker run -it kaizenjapan/hello_world /bin/bash

自己参考資料(self reference)

github入門 (1) 入門
https://qiita.com/kaizen_nagoya/items/b6f5b1532fd21fec79c8

今日のclang error: unknown argument と invalid value https://qiita.com/kaizen_nagoya/items/abcffef21280a98dc817

GitHub から Qiita への貼り付け
https://qiita.com/kaizen_nagoya/items/38a3f1789edba9682e7b

<この記事は個人の過去の経験に基づく個人の感想です。現在所属する組織、業務とは関係がありません。>

文書履歴(document history)

ver. 0.01 初稿 20190902 昼
ver. 0.02 docker追記 20190902 午後
ver. 0.03 誤記訂正 20210101
ver. 0.04 docker追記 20210626
ver. 0.05 ありがとう追記 20230715

最後までおよみいただきありがとうございました。

いいね 💚、フォローをお願いします。

Thank you very much for reading to the last sentence.

Please press the like icon 💚 and follow me for your happy life.

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0