Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

circle CIでのビルド/テストにcmakeが利用されていないのはなぜなのか? #36

Open
yumetodo opened this issue Jun 25, 2019 · 11 comments
Labels
question Further information is requested

Comments

@yumetodo
Copy link
Contributor

#18 でcmake対応したのに、CIでそれを使わなかったらメンテされていないビルド手順になってしまい、実質死んでしまう。

@AsPJT
Copy link
Owner

AsPJT commented Jun 25, 2019

これはわたしの知識不足なんですが、
今使っているCIにcmakeが入っていなくてデフォルトの状態ではcmakeの使用が出来ないのです。
cmakeをどうすれば追加(使用)出来るのか(知識が不足しすぎていて調べても)わからず、完全にお手上げ状態です。
(gccは元から入っているので、そちらは使えています)

(CI難しい……(言い訳))

@AsPJT AsPJT added the question Further information is requested label Jun 25, 2019
@yumetodo
Copy link
Contributor Author

docker imageを作らんとだめですね。私はちょっとそれする時間ないですが。

すくなくともcircleci/ruby:2.4.1を使うって違和感あります、ruby!?って感じで。

@AsPJT
Copy link
Owner

AsPJT commented Jun 25, 2019

docker imageって何なのか1ミリもわかっていないです……。
(なんだか難しそう)

circleci/ruby:2.4.1
はよくわかりませんが、チュートリアルのまんまです……。
(CIの基本原理を全く理解していない)

@yumetodo
Copy link
Contributor Author

https://hub.docker.com/r/circleci/ruby


dockerimageが何を持っているか調べるには
https://forums.docker.com/t/how-can-i-view-the-dockerfile-in-an-image/5687/3
こんな方法があるっぽいですね。

@yumetodo
Copy link
Contributor Author

yumetodo commented Jul 7, 2019

docker image作っています。
https://github.com/yumetodo/BuildContainers
https://hub.docker.com/r/yumetodo/buildcontainers/tags

ただ、lcoverallsを入れるのに苦戦していて、
Error relocating /usr/lib/libruby.so.2.4とか言われるので
http://www.indexgo.tk/c0d3man52/notes/wajeievbrnclatitb56u
を参考にrubyをビルドしています(あれっ

ところがruby-installmake uninstallがぶっ壊れているためPRを投げている状況です。
postmodern/ruby-install#348

ref:

@yumetodo
Copy link
Contributor Author

そういえば書いてなかった、進捗だめです。結局最新のalpineで古いコンパイラを一度コンパイルする苦行をするしかなさそうという結論。

@yumetodo
Copy link
Contributor Author

負荷的にDockerHubとか各種CIサービスじゃなくてまともなマシンで手元でビルドしないと日が暮れそうで、手を出していない。

@AsPJT
Copy link
Owner

AsPJT commented Oct 19, 2019

今のところCIはgcc4.9.2ビルドの実装のみで非常にお粗末ですね……。
(しかもcmake未使用)

msvc・clangは手元の環境、またgcc・clangはwandboxで手動の検証は行なっていますが、原始的すぎるためCIを応用的に使用していきたいです。
(が、CIの学習まで手が回っていません……)

@yumetodo
Copy link
Contributor Author

いきなりいろんな環境やるんじゃなくてとりあえずalpineのapk配ってくれてるバージョンでコンパイルするCIは組んでいいかもしれない。

@yumetodo
Copy link
Contributor Author

結局最新のalpineで古いコンパイラを一度コンパイルする

という苦行に取り組みかけましたが、よく考えたらlibstdc++が衝突するか、最新のlibstdc++を使うように頑張ることになり、多分gcc4系は最新のalpineに入らない気がしてきた。

image

・・・いやまてよ、/usrじゃなくて/usr/localに入れるようにすればいいのか・・・?!?

@yumetodo
Copy link
Contributor Author

yumetodo commented Dec 27, 2019

https://github.com/alpinelinux/abuild/blob/ec96c604e95993bdfce378cf6494325d653adb29/abuild.in#L717

Packages must not put anything under /srv, /usr/local or /opt

だめじゃん。

つまりパッケージにはしないで直接dockerコンテナに含めなければ・・・

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants