ホーム » 検索結果: GLUT
検索結果: GLUT
Linux での GLUT 3D データ表示
昨日のコードをもう少し汎用的に修正.そしてそれを他から呼出せるように変更.
次の様なコードで 3D データを生成して,GLUT で表示できる様にした.
bool test (void)
{
Vd2A pts ;
{
pts.push_back(Vd2( 0, 0)) ;
pts.push_back(Vd2( 70, 0)) ;
pts.push_back(Vd2( 90, 50)) ;
pts.push_back(Vd2(100,100)) ;
pts.push_back(Vd2( 50,100)) ;
pts.push_back(Vd2( 30, 70)) ;
pts.push_back(Vd2( 40, 30)) ;
pts.push_back(Vd2( 0, 0)) ;
}
vv_PLF vvplf ;
{
Vd3A v3a = ::ToVd3A(pts) ;
Vd4A v4a = ::ToVd4A(v3a) ;
PLF plf_l__ (PLF::line,v4a) ;
PLF plf_f__ (PLF::face,v4a) ;
v_PLF v_plf ;
v_plf.push_back(plf_l__) ;
v_plf.push_back(plf_f__) ;
vvplf.push_back(v_plf) ;
}
tstring txt_name = ::g3_d_get_txt_name() ;
{
tstring tmp_path = ::Get_i_Tools_tmp_date() ;
tstring ipl_name = ::Path_AddLastSP(tmp_path) + ::Now_Format(_T("%H%M%S")) + _T(".ipl") ;
::To_ipl (vvplf,ipl_name.c_str()) ;
::SaveText(txt_name.c_str(),ipl_name) ;
}
{
::exec_g3_d(txt_name.c_str()) ;
}
return true ;
}
GLUT を使用した 3D データの表示
個人的なメモです.
4 年位前に作成したコードで,凹多角形がうまく処理できていないものがあったのでその変更.
#include "glut_cg.hxx"
#include "gonsa_to.hxx"
#define TIMING_DN 1000
// int _tmain (int argc, _TCHAR* argv[])
int main (int argc, char* argv[])
{
{
GonsA gnsa ;
{
tstring buf ; buf.resize(1000) ;
while (std::terr << _T("file ? =") , std::tin.getline(&buf[0],buf.size()))
{
tstring str = buf.c_str() ;
if (str == _T("q")) { break ; }
else if (str == _T("Q")) { break ; }
str = ::QuotM_Del_All(str) ;
if (str.empty()) { continue ; }
if (::File_IsNothing(str)) { continue ; }
tstring in_file = str ;
gnsa = ::To_GonsA(in_file.c_str()) ;
gnsa = ::GonsA_Triangulation(gnsa) ; // 2023/06/27
gnsa = ::GonsA_CalcNormal (gnsa) ; // 2023/06/27
if (gnsa.size() > 0) { break ; }
}
if (gnsa.size() == 0) { return 0 ; }
}
::set_GonsA(gnsa) ;
::set_Extent(::GonsA_GetExtent(gnsa)) ;
}
::glutInitWindowPosition(200,200) ;
::glutInitWindowSize (600,400) ;
::glutInitDisplayMode (GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH) ;
::glutInit (&argc,argv) ;
::glutCreateWindow (argv[0]) ;
::glutReshapeFunc (cv_resize) ;
::glutDisplayFunc (cg_display) ;
::glutKeyboardFunc (cv_keyboard) ;
::glutMouseFunc (cv_mouse) ;
::glutMotionFunc (cv_motion) ;
::glutTimerFunc (TIMING_DN,cv_timer,TIMING_DN) ;
::cv_init () ;
{
::glEnable(GL_LIGHTING) ;
::glEnable(GL_LIGHT0) ;
}
::glutMainLoop () ;
return 0 ;
}
#include "messbar.cxx"
Win10 に GLUT インストール
2 年位前に Linux 環境 での GLUT はインストール した.
今回は Win10 環境に…
「Windows GLUT」で検索すると…
なかなかうまく書かれているものが見つからない.
次の所は古いまま?
GLUT – The OpenGL Utility Toolkit
以前見た時は更新されていない様に思ったが…
freeglut
そこからのリンク
freeglut Windows Development Libraries
その中の freeglut 3.0.0 MSVC Package が欲しかったもの.
…/bin/freeglut.dll を c:\Windows\SysWOW64 にコピー.
また,glut32.dll の頃の exe も動作する様に …\SysWOW64\glut32.dll としてもコピー.
…/bin/x64/freeglut.dll は c:\Windows\System32 にコピー.
これで,以前作成した exe がそのまま動作することを確認.
glut.h と freeglut*.h は,次の …\PlatformSDK\include\gl にコピー.
VC 8 C:\Program Files (x86)\Microsoft Visual Studio 8\VC\PlatformSDK\Include\gl
VC 9 C:\Program Files\Microsoft SDKs\Windows\v6.0A\Include\gl
VC10 C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include\gl
VC11 C:\Program Files (x86)\Windows Kits\8.0\Include\um\gl
VC12 C:\Program Files (x86)\Windows Kits\8.1\Include\um\gl
VC14 C:\Program Files (x86)\Windows Kits\8.1\Include\um\gl
VC141 C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl
VC142 C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl
freeglut.lib は次の所にコピー.
C:\Program Files (x86)\Microsoft Visual Studio 8\VC\PlatformSDK\Lib
C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib
C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x86 , x64
C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x86 , x64
C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0\um\x86 , x64
2021/12/24
glut.h と freeglut*.h,freeglut.lib のコピー先は,お使いの環境によって異なります.
10.0.19041.0 は 2021/05 の頃での設定によるものです.
2021/12 では,10.0.22000.0 にコピーする必要があります.
https://itl.mish.work/Iwao/Doc/algo/to_thick/glut.htm
2023/11/02
VC インクルードパスの確認方法
2024/07/25
サンプルのコードを用意.t_c_ut_2024_07_25.zip
VC 6 ではそのままビルドできます.VC 2019 までは dsp からのアップグレードで可能です.
Linux 環境では次の様に入力して a.out の出力が可能です.
g++ t_c_ut_1.cpp -lGL -lGLU -lglut
「iPhone 3D プログラミング」にあるコードを使用しています.
GLUT でのメニュー
GLUT を使用してのテストコードで,起動後データを切替える方法がないかと…
メニューの利用で何とかできるか?
glutCreateMenu などで検索したがわかりやすい情報が少なかった.
https://seesaawiki.jp/w/mikk_ni3_92/d/%b4%f0%cb%dc%ca%d418
https://www.jstage.jst.go.jp/article/itej/67/5/67_417/_pdf
http://opengl.jp/glut/section06.html
以前作成した雛型に対して追加.メニュー部分はほぼリンク先のコードのまま.
https://jml.mish.work/index.php/cpp/cb-glut.html
#include "glut_cb.hxx" #include <iostream> void cb_menu (int val) { std::cout << "menu val=" << val << std::endl ; } int main(int argc, char* argv[]) { ::glutInitWindowPosition(200,100) ; ::glutInitWindowSize (600,400) ; ::glutInitDisplayMode (GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH) ; ::glutInit (&argc,argv) ; ::glutCreateWindow (argv[0]) ; ::glutReshapeFunc (cb_resize) ; ::glutDisplayFunc (cb_display) ; ::glutKeyboardFunc (cb_keyboard) ; ::glutMouseFunc (cs_mouse) ; { ::glutCreateMenu(cb_menu) ; ::glutAddMenuEntry("name 1",1) ; ::glutAddMenuEntry("name 2",2) ; ::glutAddMenuEntry("name 3",3) ; ::glutAttachMenu(GLUT_RIGHT_BUTTON) ; } ::cb_init () ; ::glutMainLoop () ; return 0 ; }
結局はこの方法ではなく,予めリスト化して キー入力 により切り替える方法に.
GLUT でテクスチャ表示
今度はテクスチャ.次の様なコードで面に貼り付け.
#include "glut_cg.hxx" #include "gonsprmt.hxx" #include "i_dib_f.hxx" i_DIB tex_01 ; int main(int argc, char* argv[]) { { tstring test_bmp = _T("./Tex01.bmp") ; // test_bmp = _T("/run/user/1000/gvfs/smb-share:server=ds116.local,share=web/i_Tools/Doc/blog/3D_Data/Tex01.bmp") ; #ifdef _MSC_VER test_bmp = _T("//DS116/web/i_Tools/Doc/blog/3D_Data/Tex01.bmp") ; #endif tex_01 = ::DIB_Load(test_bmp.c_str()) ; } { GonsA gnsa ; { Gons1 box = ::Gons_Box(Vd3(5,0,5)) ; box.SetColor(0xffffff) ; gnsa.push_back(box) ; } ::set_GonsA(gnsa) ; ::set_Extent(::GonsA_GetExtent(gnsa)) ; { C_glut* gm = ::get_c_glut() ; gm->BG = Vd4(0.9) ; gm->EP = Vd3(0,-10,0) ; } } ::glutInitWindowPosition(200,100) ; ::glutInitWindowSize (600,600) ; ::glutInitDisplayMode (GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH) ; ::glutInit (&argc,argv) ; ::glutCreateWindow (argv[0]) ; ::glutReshapeFunc (cv_resize) ; ::glutDisplayFunc (cg_display) ; ::glutKeyboardFunc (cv_keyboard) ; ::glutMouseFunc (cv_mouse) ; ::glutMotionFunc (cv_motion) ; ::cv_init () ; { ::glPixelStorei(GL_UNPACK_ALIGNMENT,1) ; ::glTexImage2D(GL_TEXTURE_2D,0,GL_RGB,tex_01.GetWidth(),tex_01.GetHeight(),0,GL_RGB,GL_UNSIGNED_BYTE,tex_01.GetP_Bits()) ; ::glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_NEAREST) ; ::glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_NEAREST) ; ::glEnable(GL_TEXTURE_2D) ; } ::glutMainLoop () ; return 0 ; }
::glTexImage2D の指定と Tex01.bmp の形式が合っていないため
32 ビット色の画像なので ::glTexImage2D の GL_RGB を GL_RGBA に.
色の順番が違うので ::glTexImage2D を見ると GL_BGRA_EXT があったのでこれを指定.
GLUT でうまく表示されない?
以前作成した現在時刻を WebGL で表示するコードを GLUT を使用した方法に書き直し.
右側の面が正しく表示されていない.
見えない面を表示しない様に判断しているコードは次の様なもの.
{ Vd3 ev = eye ; Vd3 nv ; Vd3 pt ; for (size_t fvIndex=0 ; fvIndex<pia.size() ; fvIndex++) { long fVert = pia[fvIndex].x ; long nVert = pia[fvIndex].y ; Vd3 n1 = ::Vx_get(nrms,nVert) ; Vd3 p1 = ::Vx_get(pnts,fVert) ; nv = nv + n1 ; pt = p1 ; } ev = ev - pt ; nv = nv.Normalized() ; ev = ev.Normalized() ; double theta = ::deg(acos(nv.Dot(ev))) ; if (theta > 90) { continue ; } }
原因は,描画用に与えている視点で目標点が加算されていなかったため.
void draw(void) { GonsA* ga = get_GonsA() ; Vd3 eye = ::get_c_glut()->EP ; // eye+= ::get_c_glut()->TP ; ::GonsA_to_gl(*ga,eye) ; }
最終的にはこのあたり(C_glut)の見直しが必要.
VC Linux で GLUT
GLUT を使用したコード
ビルドするとリンクでのエラーとなってしまう.
1>------ ビルド開始: プロジェクト: T_GL2, 構成: Debug x64 ------ 1>ソースを検証します 1>リモートでソースを 'fedora' にコピーします 1>アーキテクチャを検証します 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Microsoft\VC\v160\Application Type\Linux\1.0\Linux.targets(184,5): warning : 配置で使用されるリモート システムに互換性のないプラットフォーム アーキテクチャ ('x64'、'ARM') があります。 1>アーキテクチャを検証します 1>リモート ビルドを開始しています 1>ソースをコンパイルします: 1>オブジェクトをリンクしています 1>/usr/bin/ld : error : /home/Iwao/projects/T_GL2/obj/x64/Debug/main.o: in function `idle()': 1>D:\Document\VS\VS\2019\T_Linux\T_GL2\main.cpp(51): error : undefined reference to `glutPostRedisplay' 1>/usr/bin/ld : error : /home/Iwao/projects/T_GL2/obj/x64/Debug/main.o: in function `display()': 1>D:\Document\VS\VS\2019\T_Linux\T_GL2\main.cpp(56): error : undefined reference to `glClear' 1>/usr/bin/ld : error : /home/Iwao/projects/T_GL2/main.cpp:63: undefined reference to `glMatrixMode' 1>/usr/bin/ld : error : /home/Iwao/projects/T_GL2/main.cpp:64: undefined reference to `glLoadIdentity' 1>/usr/bin/ld : error : /home/Iwao/projects/T_GL2/main.cpp:65: undefined reference to `gluLookAt' 1>/usr/bin/ld : error : /home/Iwao/projects/T_GL2/main.cpp:67: undefined reference to `glColor3d' ... 1>/usr/bin/ld : error : /home/Iwao/projects/T_GL2/main.cpp:165: undefined reference to `glutMainLoop' 1>collect2 : error : エラー: ld はステータス 1 で終了しました 1>プロジェクト "T_GL2.vcxproj" のビルドが終了しました -- 失敗。 ========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
コマンドでの -l オプションにあたる指定が足りないため.
「リンカー」-「コマンドライン」-「追加のオプション」に以下を追加.
-lglut -lGL -lGLU
GLUT インストール
ちょっと時間が空いたので,Linux 環境で GLUT を使える様にしてみた.
以前からお世話になっている次の所に詳しく書かれている.
GLUTによる「手抜き」OpenGL入門
Ubuntu , Debian ,Raspberry Pi では
$ sudo apt install freeglut3 freeglut3-dev
Fedora では
$ sudo dnf install freeglut
$ sudo dnf install freeglut-devel
コンパイルは
$ cc hello_gl.c -lglut -lGLU -lGL
https://jml.mish.work/index.php/cpp/install-glut.html
opengl.jp
The OpenGL Utility Toolkit (GLUT) Programming Interface API Version 3 日本語翻訳版
2021/05 Win10 に GLUT インストール
2025/06/16
$ sudo apt install freeglut3-dev
xcode + glut
「Command Line Tool」としてプロジェクトを作成.
「GLUT」を追加.
10.9 になったこと?により出力される次の様なワーニングをでない様にするために 10.8 に.
/Users/Iwao/…/main.cpp:116:2: ‘glutInit’ is deprecated: first deprecated in OS X 10.9
インクルードパス設定場所は,「Build Settings」−「Search Paths」−「Header Search Paths」
glut.h のインクルードは以下の様にしている.
#ifdef __APPLE_CC__
#include <GLUT/glut.h>
#else
#include <GL/glut.h>
#endif
VC でビルドできなくなった?
先日 VS 2022 のアップデートがあったので更新.
アップデート後のいつもの確認で,ツールのデバッグ版をビルドすると,いつまで経っても完了しない.
時々アップデートに失敗することがあるので,それかと思い,VC 2015 でビルドしても同様.
ここまでは 6/21 に確認.
VC 2005 でのビルドも完了しない.VC 6 では OK .
VC 2022 でダイアログベースで作成したスケルトンのままでも同様.
VC 2022 で,VB や C# のフォームアプリケーションはちゃんとビルドできる.
検索してもそれらしい情報には引っかからない.そうなると環境の問題か?
通常の MFC を使用したツール類は,今月に入ってからはビルドしていない.
.NET を利用した Web サーバは,インストールしている VC 2005 から 2022 すべてで 6/3 にビルドしている.
その後,VC 6 でのビルドは行っているが,VC 2022 などではビルドしていない?
先週までの影響しそうな変更などは次のようなもの.
NAS 環境に Docker とそのコンテナなどをインストール.
Windows Update 2025/06 .VS 2022 などのアップデート.
WSL はインストール済みだった.Docker Desktop のインストール.
Linux でもコンパイルできる様に,一部の共通のコードの修正.
VS 2022 のアップデート.
Web サーバのプロジェクトを VC 2005 と 2008 で再度ビルドすると,問題ない.VC 2010 はダメ.
VC 2005 で作成したダイアログベースのプロジェクトは 30 分程度かかるがビルドできた.
これらのことを考えると,ネットワークの問題か,インクルードの関係と思われる.
今まで長い間,インクルードの関係が次の様になっている.
今は使用していないパスの設定を整理して削除.
先日までの速度でビルドできるようになった.
mount 先への書き込み
引き続き,環境をどうするか?
現状 Win32 の AP の開発は,次の様に分けている.
Server_TS : 共通のコード(_.SRC 以下)
Server_DS : プロジェクトのソースなど(AppWizard の生成物).
Server_AS : ビルド結果(*.obj,*.exe).
Win11 PC : 一時的なテスト用プロジェクトなど.
今まで,共通のコードは mount して,Linux 固有の部分はそれぞれの環境に置いていた.
Server_DS のテスト環境に,Win10 PC の仮想マシンにあった Linux 環境のファイルをコピー.
次の様に mount .
mount -t cifs //192.168.1.xx/Public/Temp/linux/gcc /home/wao/test/gcc …
コンパイルするとエラーになる.
g++ c84.cpp -lglut -lGL -lGLU
コンパイル時に sudo をつければ良い.
ソースの編集は,他環境からのことが多いので,これで良しとするか?
さらに調べていると,よくわからない状態に.
sudo g++ src.cpp とするとエラーになってしまう.
PC の D ドライブにソースを入れた場合や,Linux 環境にコピーした場合などは OK .
この1ページで一通りわかる!Linuxのマウント(mount)について
マウントしたディレクトリを一般ユーザー権限にする
LinuxでNTFSファイルシステムのマウントでアクセス権限やファイルの所有者変更で悩まないために
Synology NAS で OpenMP
最近 Docker に関して調べていて,幾つか気になったことを整理.
以前,OpenMP に関して調べているが今の時点で整理すると,
Synology NAS DS220+ では実行可能,TS-253D と AS5202T では不可.
DS220+ でも,ビルドはできない.他の環境でビルドしたものをコピーして実行.
何れの環境でも omp.h が存在しないためビルドはできない.
DS220+ では libgomp.so が存在するので動作するみたい.
TS-253D では「libgomp.so がない」となってしまう.
当然のことではあるが,Docker など仮想環境を利用すれば可能になる.
Windows で Docker
Win11 環境での続き…
先日から NAS 環境でいろいろとやったので,ある程度すんなりできた.
dorowu/ubuntu-desktop-lxde-vnc を検索してインストール.
「dorowu/ubuntu-des…」を選択してインストール.
「RUN」して「Optional settings」を「↓」.
「Host port」に「60080」などと入力し「Run」.
「60080:80」のリンクをクリックするとブラウザが開く.
gcc などをインストール.
GLUT を使用したコードをビルドして動作することを確認.
Windows 10 homeでWSL2 + DockerDesktopでDocker環境を構築する手順
Comprehensive Guide to dorowu/ubuntudesktoplxdevnc:latest
Windows 11 + Docker + Linux開発の落とし穴
AIロボット入門2024:LXDEデスクトップ環境の使い方
【Docker】公式イメージでUbuntuデスクトップ構築手順
Windows で Docker ?
Ubuntu と同様に wsl ––install fedora で Fedora をインストールできた(この環境では既に入っている ).
Microsoft Windows [Version 10.0.26100.4349]
(c) Microsoft Corporation. All rights reserved.
C:\Users\Iwao\AppData\Local\Temp>wsl --install fedora
ダウンロードしています: Fedora Linux 42
インストールしています: Fedora Linux 42
指定された名前のディストリビューションは既に存在します。--name を使用して別の名前を選択してください。
エラー コード: Wsl/InstallDistro/Service/RegisterDistro/ERROR_ALREADY_EXISTS
C:\Users\Iwao\AppData\Local\Temp>
gcc や glut などもインストール.
2014/09 の GLUT のコードを,2019/09 に a.out にしたものがあった.
Fedora から参照できるようにして,起動するとうまく動いた.
ここまで特に何も考えないでやっていたが,Fedora 42 は最近になって WSL から簡単に利用できるようになったみたい.
Fedora in Windows Subsystem for Linux
WSL に標準で対応した Fedora 42 がリリースされたので試してみる(WSL 2 編)
2025/06/13
同様に Ubuntu で GLUT 関係をやったが,freeglut3 がインストールできない.freeglut3-dev は可能.
wao@B660M:~$ sudo apt install freeglut3
[sudo] password for wao:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package freeglut3
wao@B660M:~$ sudo apt install freeglut3-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
libegl-dev libgl-dev libgl1-mesa-dev libgles-dev libgles1 libglu1-mesa libglu1-mesa-dev libglut-dev libglut3.12
libglvnd-core-dev libglvnd-dev libglx-dev libice-dev libopengl-dev libopengl0 libpthread-stubs0-dev libsm-dev libx11-dev
libxau-dev libxcb1-dev libxdmcp-dev libxext-dev libxt-dev x11proto-dev xorg-sgml-doctools xtrans-dev
Suggested packages:
libice-doc libsm-doc libx11-doc libxcb-doc libxext-doc libxt-doc
The following NEW packages will be installed:
freeglut3-dev libegl-dev libgl-dev libgl1-mesa-dev libgles-dev libgles1 libglu1-mesa libglu1-mesa-dev libglut-dev
libglut3.12 libglvnd-core-dev libglvnd-dev libglx-dev libice-dev libopengl-dev libopengl0 libpthread-stubs0-dev libsm-dev
libx11-dev libxau-dev libxcb1-dev libxdmcp-dev libxext-dev libxt-dev x11proto-dev xorg-sgml-doctools xtrans-dev
0 upgraded, 27 newly installed, 0 to remove and 3 not upgraded.
Need to get 2970 kB of archives.
After this operation, 12.7 MB of additional disk space will be used.
Do you want to continue? [Y/n]
2019/09 の a.out は libglut.so.3 がないため実行できなかった.
GLUT を使用したコードは,Ubuntu 環境でビルドし直すことで起動できるようになった.
【初心者向け】WindowsにDockerをインストールする方法|Docker Desktop編
WSL(Windows Subsystem for Linux)向けにFedoraディストリビューション登場
How to install Fedora on WSL for Windows 10 and Windows 11
MicrosoftがWSLにFedora Linuxを追加、tarベース新アーキテクチャの採用でディストリビューション拡充へ
WSLg を使って Docker 上で GUI アプリを動かす(GPUサポート付き)
QNAP NAS で Docker
引き続き Docker の関係をいろいろと…
コンテナの「端末」を使用した操作はある程度わかったが,今度は GUI での操作.
Synology NAS でいろいろとやったが,よくわからず.そのため QNAP NAS で.
「Container Station」-「アプリテンプレート」で「Ubuntu Desktop with noVNC」を「デプロイ」.
「Container Station」-「コンテナ」で「ubuntu-desktop-lxde-vnc-1」の ↗ で起動できる.
これと同じようなことを Synology NAS で行ったが,デスクトップを開く方法までたどり着けなかった.
QNAP NASでDocker(Container Stationを使用)
QNAP NASでRedmineを動かす
QNAP NASのContainerSation(Docker)であとから環境変数を追加する
QNAPでDockerレジストリサーバの作成
TWSNMP FC を QNAP NAS の Docker で 動作させる
やっぱりDockerって便利 QNAP TS-453Aで数クリックで「Aipo」を動かす
QNAP の Docker を使ってみる
MFC + System:: … ::ZipFile
先日から作成しているテスト exe で,ZIP に圧縮する動作を…
主要な exe では,izip.exe を呼出したり,シェルの機能を利用している.
ただ,同期のタイミングなど少し時間がかかるので,試しに直接呼出す方法に変更.
プロジェクトの設定で「共通言語ランタイム サポート (/clr)」に.
そのままビルドすると
cl : コマンド ライン error D8016: コマンド ライン オプション ‘/ZI’ と ‘/clr’ は同時に指定できません
cl : コマンド ライン error D8016: コマンド ライン オプション ‘/clr’ と ‘/Gm’ は同時に指定できません
cl : コマンド ライン error D8016: コマンド ライン オプション ‘/clr’ と ‘/RTC1’ は同時に指定できません
T:\…\zip_CLI.hxx(16,9): fatal error C1107: アセンブリ ‘System.IO.Compression.dll‘ がみつかりませんでした: /AI または LIBPATH 環境変数を使用してアセンブリ検索パスを指定してください。
L:\Document\…\ComPrj01.cpp : fatal error C1128: セクションの数がオブジェクト ファイル形式の制限を超えています: /bigobj と共にコンパイルしてください
「プログラム データベース (/Zi)」に.
/Gm と /RTC1 は「<親またはプロジェクトの既定値から継承>」に.
「追加の #using ディレクトリ」を「C:\Windows\Microsoft.NET\Framework\v4.0.30319」に.
「C/C++」-「コマンド ライン」の「追加のオプション」に「 /bigobj 」の追加.
これでビルドはできる様になったが,あまり見慣れない warning が…
ComPrj01.obj : warning LNK4248: 未解決の typeref トークン (0100001B) (‘_TREEITEM’) です。イメージを実行できません。
ComPrj01.obj : warning LNK4248: 未解決の typeref トークン (0100001F) (‘GLUtesselator’) です。イメージを実行できません。
これに関しては,ちょっとわからず.
Ubuntu Linux Station
先日 Linux Station がうまく動作しなくなったように思ったが…
ファームアップデート後,試しに起動するとうまくいった.
先日は,メモリが足りなかったとかだったのか?
GLUT を使える様に インストール .
sudo apt install freeglut3 freeglut3-dev
ASUSTOR NAS Linux Center Debian 環境の a.out を実行.
AS5202T 再セットアップ – 9
Linux Center を入れて Debian 10 Desktop をインストール.
次のページを参考にさせてもらって日本語化.
https://www.server-world.info/query?os=Debian_10&p=japanese
WSLのDebian環境を日本語化する
sudo apt -y install task-japanese locales-all
sudo apt -y install task-japanese-desktop
再起動させて日本語になった.
2020/05/05
gcc のインストール.
sudo apt install build-essential
glut のインストール.
sudo apt install freeglut3 freeglut3-dev
他によく使う tree のインストール.
sudo apt install tree
https://dev.mish.work/wordpress/2019/08/16/glut-install/
https://jml.mish.work/index.php/cpp/install-glut.html
https://jml.mish.work/index.php/cpp/glut.html
2020/05/06
Debian の環境の実体は以下に存在している.
/volume1/.@plugins/AppCentral/linux-center/containers/debian10/rootfs/home/admin
Freespire 6 インストール
先日 Twitter で見かけてブックマークしておいたサイト.
https://www.freespirelinux.com/2020/02/freespire-60-released.html
2020/06/22 https://www.freespire.net/
時間が空いたので VirtualBox の環境にインストールしてみた.
ちょっと手順がわかりにくい部分があったのでメモ.
仮想マシンの作成.
仮想ハードディスクの作成.
ダウンロードした freespire-6.iso を選択.
仮想マシンの起動.
起動するとこんな感じ.
デスクトップにある「Install freespire 18.04」を開いてインストール開始.
インストーラの起動後,一番下に「日本語」がある.あとは表示に従い操作すれば OK .
日本語のフォルダが幾つかできているので変更.
LANG=C xdg-user-dirs-gtk-update
2020/05/06
glut インストール.
sudo apt install freeglut3 freeglut3-dev